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 IsOrgDefaultPolicyLoaded(ADObjectId policyId) { ADNotificationManager.ADSettingsInfo <PolicyData> adsettingsInfo; return(ADNotificationManager.policies.TryGetValue(ADNotificationManager.GetDefaultPolicyKey(policyId), out adsettingsInfo)); }
private static bool IsPolicyAlreadyLoaded(ADObjectId policyId) { ADNotificationManager.ADSettingsInfo <PolicyData> adsettingsInfo; return(ADNotificationManager.policies.TryGetValue(policyId.DistinguishedName, out adsettingsInfo) || ADNotificationManager.IsOrgDefaultPolicyEquals(policyId, ADNotificationManager.GetDefaultPolicyKey(policyId))); }