Exemple #1
0
        // Token: 0x06001210 RID: 4624 RVA: 0x000389F8 File Offset: 0x00036BF8
        private static List <MailboxDatabase> GetDatabasesForProvisioningCached(ITopologyConfigurationSession configSession, bool localSiteDatabasesOnly, LogMessageDelegate logger)
        {
            List <MailboxDatabase> result;

            using (new MonitoredScope("ProvisioningLayerLatency", "PhysicalResourceLoadBalancing.GetDatabasesForProvisioningCached", LoggerHelper.CmdletPerfMonitors))
            {
                Guid key = localSiteDatabasesOnly ? CannedProvisioningCacheKeys.ProvisioningEnabledDatabasesOnLocalSite : CannedProvisioningCacheKeys.ProvisioningEnabledDatabasesOnAllSites;
                List <MailboxDatabase> list = ProvisioningCache.Instance.TryAddAndGetGlobalData <List <MailboxDatabase> >(key, () => PhysicalResourceLoadBalancing.GetDatabasesForProvisioning(configSession, localSiteDatabasesOnly, logger));
                if (list.Count == 0)
                {
                    ProvisioningCache.Instance.RemoveGlobalData(key);
                }
                result = new List <MailboxDatabase>(list);
            }
            return(result);
        }