// Token: 0x060009A5 RID: 2469 RVA: 0x00040AA4 File Offset: 0x0003ECA4
 public static MailboxData CreateFromUserSettings(UserSettings settings, InfoFromUserMailboxSession info)
 {
     return(new MailboxData(info)
     {
         Settings = settings
     });
 }
 // Token: 0x060009E0 RID: 2528 RVA: 0x00041355 File Offset: 0x0003F555
 internal void RaiseSettingsChangedEvent(UserSettings settings, InfoFromUserMailboxSession info)
 {
     if (this.UserSettingsChanged != null)
     {
         this.UserSettingsChanged(this, settings, info);
     }
 }
 // Token: 0x060009A3 RID: 2467 RVA: 0x00040984 File Offset: 0x0003EB84
 public MailboxData(InfoFromUserMailboxSession info)
 {
     this.Settings                    = new UserSettings(info);
     this.databaseGuid                = info.DatabaseGuid;
     this.mailboxGuid                 = info.MailboxGuid;
     this.defaultCalendarFolderId     = info.DefaultCalendarFolderId;
     this.defaultDeletedItemsFolderId = info.DefaultDeletedItemsFolderId;
     this.defaultJunkEmailFolderId    = info.DefaultJunkEmailFolderId;
     this.defaultOutboxFolderId       = info.DefaultOutboxFolderId;
 }
Example #4
0
 // Token: 0x06000987 RID: 2439 RVA: 0x0003FE34 File Offset: 0x0003E034
 private static void NotificationStillEnabled(UserSettings settings, InfoFromUserMailboxSession info)
 {
     try
     {
         ExDateTime  userNow     = settings.TimeZone.ExTimeZone.ConvertDateTime(ExDateTime.Now);
         MailboxData mailboxData = MailboxData.CreateFromUserSettings(settings, info);
         if (mailboxData != null)
         {
             try
             {
                 MailboxData fromCache = MailboxData.GetFromCache(mailboxData.MailboxGuid);
                 if (fromCache == null)
                 {
                     CalendarNotificationInitiator.EnableUser(ref mailboxData, userNow);
                     return;
                 }
                 if (Utils.AreInterestedFieldsEqual(mailboxData.Settings, fromCache.Settings))
                 {
                     return;
                 }
                 using (fromCache.CreateReadLock())
                 {
                     using (fromCache.Actions.SyncObj.CreateWriteLock())
                     {
                         CalendarNotificationInitiator.StopEmittingReminder(fromCache);
                         CalendarNotificationInitiator.StopEmittingSummary(fromCache);
                     }
                 }
                 CalendarNotificationInitiator.UpdateCacheAndInitiateEmittings(ref mailboxData, userNow);
             }
             finally
             {
                 if (mailboxData != null)
                 {
                     mailboxData.Dispose();
                     mailboxData = null;
                 }
             }
         }
         ExTraceGlobals.AssistantTracer.TraceDebug <string>((long)typeof(CalendarNotificationInitiator).GetHashCode(), "notif changed, user: {0}", settings.LegacyDN);
     }
     catch (Exception ex)
     {
         if (!CalendarNotificationAssistant.TryHandleException((long)typeof(CalendarNotificationInitiator).GetHashCode(), "handling changing", settings.LegacyDN, ex))
         {
             throw;
         }
     }
 }
Example #5
0
 // Token: 0x06000986 RID: 2438 RVA: 0x0003FE0D File Offset: 0x0003E00D
 private static void SettingsChangedEventHandler(object sender, UserSettings settings, InfoFromUserMailboxSession info)
 {
     if (NotificationFactories.Instance.IsNotificationEnabled(settings))
     {
         CalendarNotificationInitiator.NotificationStillEnabled(settings, info);
         return;
     }
     CalendarNotificationInitiator.DisableUser(settings, info.MailboxGuid);
 }
 // Token: 0x06000A5E RID: 2654 RVA: 0x000442D0 File Offset: 0x000424D0
 public UserSettings(InfoFromUserMailboxSession info)
 {
     this.LegacyDN = info.UserLegacyDN;
     this.ExternalDirectoryOrganizationId = info.ExternalDirectoryOrganizationId;
 }