private AggregatedUserConfiguration(AggregatedUserConfigurationDescriptor descriptor, IUserConfigurationManager manager) { using (DisposeGuard disposeGuard = this.Guard()) { this.descriptor = descriptor; this.manager = manager; this.Load(out this.aggregatedConfiguration, out this.memento, out this.parts, out this.typeBag); this.RemoveOrphanedPendingUpdates(); disposeGuard.Success(); } }
public UserConfigurationManager.IAggregationContext AttachAggregator(AggregatedUserConfigurationDescriptor aggregatorDescription) { UserConfigurationManager.AggregationContext aggregationContext = null; if (ConfigurationItemSchema.IsEnabledForConfigurationAggregation(this.mailboxSession.MailboxOwner)) { IAggregatedUserConfigurationReader reader = AggregatedUserConfiguration.GetReader(aggregatorDescription, this); aggregationContext = new UserConfigurationManager.AggregationContext(this, reader); lock (this.aggregators) { this.aggregators.Add(aggregationContext); } } return(aggregationContext); }