private static PolicyData AddPolicyToCache(MobileMailboxPolicy mobileMaiboxPolicy, PartitionId partitionId)
        {
            PolicyData policyData = null;

            if (mobileMaiboxPolicy != null)
            {
                policyData = new PolicyData(mobileMaiboxPolicy);
                string defaultPolicyKey = ADNotificationManager.GetDefaultPolicyKey(mobileMaiboxPolicy.Id);
                if (policyData.IsDefault)
                {
                    AirSyncDiagnostics.TraceDebug <string>(ExTraceGlobals.RequestsTracer, null, "Adding policy {0} as default.", mobileMaiboxPolicy.Id.DistinguishedName);
                    ADNotificationManager.policies.Add(defaultPolicyKey, new ADNotificationManager.ADSettingsInfo <PolicyData>(partitionId, policyData, ExDateTime.UtcNow));
                }
                else if (ADNotificationManager.IsOrgDefaultPolicyEquals(mobileMaiboxPolicy.Id, defaultPolicyKey))
                {
                    AirSyncDiagnostics.TraceDebug <string>(ExTraceGlobals.RequestsTracer, null, "Removing policy {0} as default.", mobileMaiboxPolicy.Id.DistinguishedName);
                    ADNotificationManager.policies.Remove(defaultPolicyKey);
                }
                AirSyncDiagnostics.TraceDebug <string>(ExTraceGlobals.RequestsTracer, null, "Adding policy to location {0}.", mobileMaiboxPolicy.Id.DistinguishedName);
                ADNotificationManager.policies.Add(mobileMaiboxPolicy.Id.DistinguishedName, new ADNotificationManager.ADSettingsInfo <PolicyData>(partitionId, policyData, ExDateTime.UtcNow));
            }
            return(policyData);
        }
 private static bool IsPolicyAlreadyLoaded(ADObjectId policyId)
 {
     ADNotificationManager.ADSettingsInfo <PolicyData> adsettingsInfo;
     return(ADNotificationManager.policies.TryGetValue(policyId.DistinguishedName, out adsettingsInfo) || ADNotificationManager.IsOrgDefaultPolicyEquals(policyId, ADNotificationManager.GetDefaultPolicyKey(policyId)));
 }