private AttendeeInquiryRumInfo(bool wouldRepair, MeetingInquiryAction predictedRepairAction) : this(null, wouldRepair, predictedRepairAction) { }
internal override bool WouldTryToRepairIfMissing(CalendarValidationContext context, out MeetingInquiryAction predictedAction) { predictedAction = MeetingInquiryAction.DeletedVersionNotFound; if (this.calendarIntent != null) { predictedAction = this.calendarConverter.ConvertToMeetingInquiryAction(this.calendarIntent.PredictedAction); return(this.calendarIntent.WouldRepair); } return(false); }
public static AttendeeInquiryRumInfo CreateMasterInstance(bool wouldRepair, MeetingInquiryAction predictedRepairAction) { EnumValidator <MeetingInquiryAction> .ThrowIfInvalid(predictedRepairAction, "predictedRepairAction"); return(new AttendeeInquiryRumInfo(wouldRepair, predictedRepairAction)); }
public static AttendeeInquiryRumInfo CreateOccurrenceInstance(ExDateTime originalStartTime, bool wouldRepair, MeetingInquiryAction predictedRepairAction) { EnumValidator <MeetingInquiryAction> .ThrowIfInvalid(predictedRepairAction, "predictedRepairAction"); return(new AttendeeInquiryRumInfo(new ExDateTime?(originalStartTime), wouldRepair, predictedRepairAction)); }
private AttendeeInquiryRumInfo(ExDateTime?originalStartTime, bool wouldRepair, MeetingInquiryAction predictedRepairAction) : base(RumType.Inquiry, originalStartTime) { this.WouldRepair = wouldRepair; this.PredictedRepairAction = predictedRepairAction; }
internal abstract bool WouldTryToRepairIfMissing(CalendarValidationContext context, out MeetingInquiryAction predictedAction);
internal override bool WouldTryToRepairIfMissing(CalendarValidationContext context, out MeetingInquiryAction predictedAction) { return(MeetingInquiryMessage.WouldTryToRepairIfMissing(context.CvsGateway, context.AttendeeItem.GlobalObjectId, this.session, this.CalendarFolderId, out predictedAction)); }
private static bool WouldTryToRepairIfMissing(CalendarVersionStoreGateway cvsGateway, GlobalObjectId globalObjectId, MailboxSession session, MeetingInquiryMessage message, bool performRepair, byte[] calendarFolderId, out MeetingInquiryAction predictedAction) { VersionedId versionedId; bool result; if (MeetingInquiryMessage.TryGetCancelledVersionIdFromCvs(cvsGateway, globalObjectId, session, calendarFolderId, out versionedId)) { if (performRepair) { message.LocationIdentifierHelperInstance.SetLocationIdentifier(47383U, LastChangeAction.SendMeetingCancellations); message.SendCancellationBasedOnFoundIntent(versionedId); } predictedAction = MeetingInquiryAction.SendCancellation; result = true; } else { if (versionedId != null) { using (CalendarItemBase calendarItemBase = CalendarItemBase.Bind(session, versionedId)) { predictedAction = MeetingInquiryMessage.GetReviveAction(cvsGateway, session, calendarItemBase); if (predictedAction == MeetingInquiryAction.ReviveMeeting) { if (performRepair) { predictedAction = message.TryReviveMeeting(calendarItemBase); } result = true; } else { result = false; } return(result); } } ExTraceGlobals.MeetingMessageTracer.TraceDebug <string, GlobalObjectId>((long)session.GetHashCode(), "Storage.MeetingInquiryMessage::Process. Couldn't find deletion on mailbox {0}. Skipping GOID {1}", session.DisplayName, globalObjectId); predictedAction = MeetingInquiryAction.DeletedVersionNotFound; result = false; } return(result); }
public static bool WouldTryToRepairIfMissing(CalendarVersionStoreGateway cvsGateway, GlobalObjectId globalObjectId, MailboxSession session, byte[] calendarFolderId, out MeetingInquiryAction predictedAction) { return(MeetingInquiryMessage.WouldTryToRepairIfMissing(cvsGateway, globalObjectId, session, null, false, calendarFolderId, out predictedAction)); }