internal static string AddHybridConfigurationWellKnownSubDomain(string domain) { if (!string.IsNullOrEmpty(domain) && !FederatedOrganizationId.ContainsHybridConfigurationWellKnownSubDomain(domain) && !Globals.IsDatacenter) { return(FederatedOrganizationId.HybridConfigurationWellKnownSubDomain + "." + domain); } return(domain); }
public AcceptedDomain[] FindAcceptedDomainsByFederatedOrgId(FederatedOrganizationId federatedOrganizationId) { QueryFilter filter = new AndFilter(new QueryFilter[] { new ComparisonFilter(ComparisonOperator.Equal, AcceptedDomainSchema.FederatedOrganizationLink, federatedOrganizationId.Id) }); return(base.Find <AcceptedDomain>(federatedOrganizationId.ConfigurationUnit, QueryScope.SubTree, filter, null, 0)); }
internal static string RemoveHybridConfigurationWellKnownSubDomain(string domain) { string result = domain; if (FederatedOrganizationId.ContainsHybridConfigurationWellKnownSubDomain(domain)) { result = domain.Substring(FederatedOrganizationId.HybridConfigurationWellKnownSubDomain.Length + 1); } return(result); }
private void Populate() { FederatedOrganizationId federatedOrganizationId = this.federatedOrganizationIdCache.Value; if (federatedOrganizationId == null) { OrganizationBaseCache.Tracer.TraceError <OrganizationId>((long)this.GetHashCode(), "Unable to find the FederatedOrganizationId associated with the organization '{0}'", base.OrganizationId); return; } OrganizationBaseCache.Tracer.TraceDebug <ADObjectId>((long)this.GetHashCode(), "Searching for AcceptedDomain instances associated with FederatedOrganizationId '{0}'", federatedOrganizationId.Id); AcceptedDomain[] acceptedDomains = null; ADOperationResult adoperationResult = ADNotificationAdapter.TryRunADOperation(delegate() { acceptedDomains = this.Session.FindAcceptedDomainsByFederatedOrgId(federatedOrganizationId); }); if (!adoperationResult.Succeeded) { OrganizationBaseCache.Tracer.TraceError <ADObjectId, Exception>((long)this.GetHashCode(), "Unable to find AcceptedDomain instances associated with the FederatedOrganizationId '{0}' due to exception: {1}", federatedOrganizationId.Id, adoperationResult.Exception); return; } if (acceptedDomains == null || acceptedDomains.Length == 0) { OrganizationBaseCache.Tracer.TraceError <ADObjectId>((long)this.GetHashCode(), "Unable to find any federated AcceptedDomain associated with the FederatedOrganizationId '{0}'", federatedOrganizationId.Id); return; } string[] array = new string[acceptedDomains.Length]; for (int i = 0; i < acceptedDomains.Length; i++) { array[i] = acceptedDomains[i].DomainName.Domain; } string text = null; foreach (AcceptedDomain acceptedDomain in acceptedDomains) { if (acceptedDomain.IsDefaultFederatedDomain) { OrganizationBaseCache.Tracer.TraceDebug <SmtpDomainWithSubdomains>((long)this.GetHashCode(), "Found AcceptedDomain '{0}' as default federated domain", acceptedDomain.DomainName); text = acceptedDomain.DomainName.Domain; break; } } OrganizationBaseCache.Tracer.TraceDebug <ADObjectId, ArrayTracer <string> >((long)this.GetHashCode(), "Found the following domains associated with FederatedOrganizationId '{0}': {1}", federatedOrganizationId.Id, new ArrayTracer <string>(array)); this.value = array; this.defaultDomain = text; }
AcceptedDomain[] IConfigurationSession.FindAcceptedDomainsByFederatedOrgId(FederatedOrganizationId federatedOrganizationId) { return(base.InvokeWithAPILogging <AcceptedDomain[]>(() => this.GetSession().FindAcceptedDomainsByFederatedOrgId(federatedOrganizationId), "FindAcceptedDomainsByFederatedOrgId")); }