Beispiel #1
0
 // Token: 0x06000980 RID: 2432 RVA: 0x0003FC34 File Offset: 0x0003DE34
 public static void StopAll(MailboxData mailboxData)
 {
     CalendarNotificationInitiator.PerformCustomizedOperationOnActionsList(delegate
     {
         mailboxData.Actions.ForEach(delegate(CalendarNotificationAction action)
         {
             CalendarNotificationInitiator.CompleteAction(action, "StopAll");
         });
     }, "StopAll");
 }
Beispiel #2
0
 // Token: 0x0600097F RID: 2431 RVA: 0x0003FBC0 File Offset: 0x0003DDC0
 public static void StopEmittingUpdate(MailboxData mailboxData)
 {
     CalendarNotificationInitiator.PerformCustomizedOperationOnActionsList(delegate
     {
         mailboxData.Actions.ForEach(delegate(CalendarNotificationAction action)
         {
             if (typeof(UpdateEmitting) == action.GetType())
             {
                 CalendarNotificationInitiator.CompleteAction(action, "StopEmittingUpdate");
             }
         });
     }, "StopEmittingUpdate");
 }
 // Token: 0x06000923 RID: 2339 RVA: 0x0003DA68 File Offset: 0x0003BC68
 private static void UpdateReminderAccordingToDeletedUpdate(MailboxData mailboxData, StoreObjectId calItemId, StoreObjectId calItemOccId)
 {
     mailboxData.Actions.ForEach(delegate(CalendarNotificationAction action)
     {
         if (typeof(ReminderEmitting) != action.GetType())
         {
             return;
         }
         CalendarInfo calendarInfo = ((ReminderEmitting)action).CalendarInfo;
         if (!object.Equals(calItemId, calendarInfo.CalendarItemIdentity) || !object.Equals(calItemOccId, calendarInfo.CalendarItemOccurrenceIdentity))
         {
             return;
         }
         CalendarNotificationInitiator.CompleteAction(action, "UpdateReminderAccordingToDeletedUpdate");
     });
 }
Beispiel #4
0
 // Token: 0x0600097E RID: 2430 RVA: 0x0003FB1C File Offset: 0x0003DD1C
 public static void StopEmittingSummary(MailboxData mailboxData)
 {
     if (!NotificationFactories.Instance.IsSummaryEnabled(mailboxData.Settings))
     {
         return;
     }
     CalendarNotificationInitiator.PerformCustomizedOperationOnActionsList(delegate
     {
         mailboxData.Actions.ForEach(delegate(CalendarNotificationAction action)
         {
             if (typeof(SummaryGenerating) == action.GetType())
             {
                 CalendarNotificationInitiator.CompleteAction(action, "StopEmittingSummary");
             }
         });
     }, "StopEmittingSummary");
 }
Beispiel #5
0
 // Token: 0x06000984 RID: 2436 RVA: 0x0003FD5C File Offset: 0x0003DF5C
 public void Stop(DatabaseInfo databaseInfo)
 {
     lock (CalendarNotificationInitiator.initiatedDatabaseGuids)
     {
         if (CalendarNotificationInitiator.initiatedDatabaseGuids.ContainsKey(databaseInfo.Guid))
         {
             CalendarNotificationInitiator.initiatedDatabaseGuids.Remove(databaseInfo.Guid);
         }
     }
     CalendarNotificationInitiator.pendingInitiatings.ForEach(delegate(Initiating action)
     {
         if (action.Context.Guid == databaseInfo.Guid)
         {
             CalendarNotificationInitiator.CompleteAction(action, "stoping database");
         }
     });
     CalendarNotificationInitiator.ExcludeDatabase(databaseInfo.Guid);
     SystemMailbox.RemoveInstance(databaseInfo);
 }
Beispiel #6
0
 // Token: 0x0600097D RID: 2429 RVA: 0x0003FA78 File Offset: 0x0003DC78
 public static void StopEmittingReminder(MailboxData mailboxData)
 {
     if (!NotificationFactories.Instance.IsReminderEnabled(mailboxData.Settings))
     {
         return;
     }
     CalendarNotificationInitiator.PerformCustomizedOperationOnActionsList(delegate
     {
         mailboxData.Actions.ForEach(delegate(CalendarNotificationAction action)
         {
             Type type = action.GetType();
             if (typeof(ReminderEmitting) != type && typeof(ReminderReloading) != type)
             {
                 return;
             }
             CalendarNotificationInitiator.CompleteAction(action, "StopEmittingReminder");
         });
     }, "StopEmittingReminder");
 }
        // Token: 0x06000924 RID: 2340 RVA: 0x0003DBB0 File Offset: 0x0003BDB0
        private static void UpdateReminderAccordingToChangedUpdate(MailboxData mailboxData, IList <CalendarInfo> calEvents, IList <CalendarInfo> eventsToBeRemoved)
        {
            List <CalendarInfo> eventsToBeAdded        = new List <CalendarInfo>(calEvents);
            ExDateTime          nextReminderReloadTime = ExDateTime.MinValue;

            mailboxData.Actions.ForEach(delegate(CalendarNotificationAction action)
            {
                if (typeof(ReminderReloading) == action.GetType())
                {
                    nextReminderReloadTime = action.ExpectedTime;
                    return;
                }
                if (typeof(ReminderEmitting) != action.GetType())
                {
                    return;
                }
                CalendarInfo calendarInfo2 = ((ReminderEmitting)action).CalendarInfo;
                IList <CalendarInfo> list  = null;
                CalendarInfo calendarInfo3 = null;
                if (CalendarChangeProcessor.TryGetMatched(eventsToBeRemoved, calendarInfo2.CalendarItemIdentity, calendarInfo2.CalendarItemOccurrenceIdentity, true, out list, out calendarInfo3) && calendarInfo3 != null)
                {
                    CalendarNotificationInitiator.CompleteAction(action, "UpdateReminderAccordingToChangedUpdate");
                }
                list          = null;
                calendarInfo3 = null;
                if (CalendarChangeProcessor.TryGetMatched(eventsToBeAdded, calendarInfo2.CalendarItemIdentity, calendarInfo2.CalendarItemOccurrenceIdentity, true, out list, out calendarInfo3))
                {
                    eventsToBeAdded.Remove(calendarInfo3);
                    ReminderEmitting action3;
                    if (!calendarInfo3.ReminderIsSet || !calendarInfo3.IsInteresting(CalendarNotificationType.ChangedUpdate) || calendarInfo3.ReminderTime < calendarInfo3.CreationRequestTime || !NotificationFactories.Instance.TryCreateReminderEmitting(calendarInfo3, action.Context, out action3))
                    {
                        CalendarNotificationInitiator.CompleteAction(action, "UpdateReminderAccordingToChangedUpdate");
                        return;
                    }
                    CalendarNotificationInitiator.UpdateAction(action, action3, "UpdateReminderAccordingToChangedUpdate");
                }
            });
            foreach (CalendarInfo calendarInfo in eventsToBeAdded)
            {
                if (calendarInfo.ReminderIsSet)
                {
                    if (calendarInfo.ReminderTime < calendarInfo.CreationRequestTime)
                    {
                        ExTraceGlobals.AssistantTracer.TraceDebug((long)typeof(CalendarChangeProcessor).GetHashCode(), "Reminder is out of date, subj: {0}, usr: {1}, event_t: {2}, rmd_t: {3}, s_t: {4}, e_t: {5}", new object[]
                        {
                            calendarInfo.NormalizedSubject,
                            mailboxData.Settings.LegacyDN,
                            calendarInfo.CreationRequestTime,
                            calendarInfo.ReminderTime,
                            calendarInfo.StartTime,
                            calendarInfo.EndTime
                        });
                    }
                    else if (nextReminderReloadTime == ExDateTime.MinValue || calendarInfo.ReminderTime <= nextReminderReloadTime)
                    {
                        ReminderEmitting action2;
                        if (NotificationFactories.Instance.TryCreateReminderEmitting(calendarInfo, mailboxData, out action2))
                        {
                            CalendarNotificationInitiator.ScheduleAction(action2, "UpdateReminderAccordingToChangedUpdate");
                        }
                    }
                    else
                    {
                        ExTraceGlobals.AssistantTracer.TraceDebug <ExDateTime, ExDateTime>((long)typeof(CalendarChangeProcessor).GetHashCode(), "We didn't process this event because reminderTime {0} is greater nextReminderReloadTime {1}. ", calendarInfo.ReminderTime, nextReminderReloadTime);
                    }
                }
            }
        }
 // Token: 0x060008F6 RID: 2294 RVA: 0x0003C8F0 File Offset: 0x0003AAF0
 protected sealed override void OnPerformed(long cookie)
 {
     CalendarNotificationInitiator.CompleteAction(this, base.GetType().Name);
 }