public override void Save(MailboxStoreTypeProvider session) { using (WorkingHoursAdapter <MailboxCalendarConfiguration> workingHoursAdapter = new WorkingHoursAdapter <MailboxCalendarConfiguration>(session.MailboxSession)) { using (UserConfigurationDictionaryAdapter <MailboxCalendarConfiguration> userConfigurationDictionaryAdapter = new UserConfigurationDictionaryAdapter <MailboxCalendarConfiguration>(session.MailboxSession, "OWA.UserOptions", new GetUserConfigurationDelegate(UserConfigurationHelper.GetMailboxConfiguration), MailboxCalendarConfiguration.mailboxProperties)) { using (UserConfigurationDictionaryAdapter <MailboxCalendarConfiguration> userConfigurationDictionaryAdapter2 = new UserConfigurationDictionaryAdapter <MailboxCalendarConfiguration>(session.MailboxSession, "Calendar", new GetUserConfigurationDelegate(UserConfigurationHelper.GetCalendarConfiguration), MailboxCalendarConfiguration.calendarProperties)) { workingHoursAdapter.Save(this); userConfigurationDictionaryAdapter.Save(this); userConfigurationDictionaryAdapter2.Save(this); base.ResetChangeTracking(); } } } }
public override IConfigurable Read(MailboxStoreTypeProvider session, ObjectId identity) { base.Principal = ExchangePrincipal.FromADUser(session.ADUser, null); using (WorkingHoursAdapter <MailboxCalendarConfiguration> workingHoursAdapter = new WorkingHoursAdapter <MailboxCalendarConfiguration>(session.MailboxSession)) { using (UserConfigurationDictionaryAdapter <MailboxCalendarConfiguration> userConfigurationDictionaryAdapter = new UserConfigurationDictionaryAdapter <MailboxCalendarConfiguration>(session.MailboxSession, "OWA.UserOptions", new GetUserConfigurationDelegate(UserConfigurationHelper.GetMailboxConfiguration), MailboxCalendarConfiguration.mailboxProperties)) { using (UserConfigurationDictionaryAdapter <MailboxCalendarConfiguration> userConfigurationDictionaryAdapter2 = new UserConfigurationDictionaryAdapter <MailboxCalendarConfiguration>(session.MailboxSession, "Calendar", new GetUserConfigurationDelegate(UserConfigurationHelper.GetCalendarConfiguration), MailboxCalendarConfiguration.calendarProperties)) { workingHoursAdapter.Fill(this); userConfigurationDictionaryAdapter.Fill(this); userConfigurationDictionaryAdapter2.Fill(this); } } } if (base.Principal.PreferredCultures.Any <CultureInfo>()) { this[MailboxCalendarConfigurationSchema.Language] = base.Principal.PreferredCultures.First <CultureInfo>(); } return(this); }