Esempio n. 1
0
 protected OrganizationId GetOrganizationId(OrganizationId currentOrgId, ADObjectId id)
 {
     if (OrganizationId.ForestWideOrgId.Equals(currentOrgId) && id != null)
     {
         if (id.Parent != null && TemplateTenantConfiguration.IsTemplateTenantName(id.Parent.Name) && TemplateTenantConfiguration.GetLocalTemplateTenant() != null)
         {
             return(TemplateTenantConfiguration.GetLocalTemplateTenant().OrganizationId);
         }
         IConfigurationSession tenantOrTopologyConfigurationSession = DirectorySessionFactory.Default.GetTenantOrTopologyConfigurationSession(ConsistencyMode.PartiallyConsistent, ADSessionSettings.FromAllTenantsOrRootOrgAutoDetect(id), 350, "GetOrganizationId", "f:\\15.00.1497\\sources\\dev\\Configuration\\src\\ObjectModel\\BaseTasks\\ADIdParameter.cs");
         ADRawEntry            adrawEntry = tenantOrTopologyConfigurationSession.ReadADRawEntry(id, new ADPropertyDefinition[]
         {
             ADObjectSchema.OrganizationId
         });
         if (adrawEntry != null)
         {
             return((OrganizationId)adrawEntry[ADObjectSchema.OrganizationId]);
         }
         IRecipientSession tenantOrRootOrgRecipientSession = DirectorySessionFactory.Default.GetTenantOrRootOrgRecipientSession(ConsistencyMode.PartiallyConsistent, ADSessionSettings.FromAllTenantsOrRootOrgAutoDetect(id), 365, "GetOrganizationId", "f:\\15.00.1497\\sources\\dev\\Configuration\\src\\ObjectModel\\BaseTasks\\ADIdParameter.cs");
         adrawEntry = tenantOrRootOrgRecipientSession.ReadADRawEntry(id, new ADPropertyDefinition[]
         {
             ADObjectSchema.OrganizationId
         });
         if (adrawEntry != null)
         {
             return((OrganizationId)adrawEntry[ADObjectSchema.OrganizationId]);
         }
     }
     return(currentOrgId);
 }
        // Token: 0x06000AF9 RID: 2809 RVA: 0x000320CC File Offset: 0x000302CC
        public static bool IsConsumerMailbox(ADObjectId id)
        {
            if (id == null || id.DistinguishedName == null || !Globals.IsDatacenter)
            {
                return(false);
            }
            Match match = ConsumerIdentityHelper.RDNRegex.Match(id.DistinguishedName);

            if (match.Success)
            {
                string[] array = id.DistinguishedName.Split(ConsumerIdentityHelper.OUSplitter, StringSplitOptions.None);
                return(array.Length >= 2 && TemplateTenantConfiguration.IsTemplateTenantName(array[1]));
            }
            return(false);
        }
        protected override void InternalValidate()
        {
            TaskLogger.LogEnter();
            base.InternalValidate();
            if (this.CreateSharedConfiguration && !this.shouldCreateSCT)
            {
                return;
            }
            if (this.ProgramId.IndexOf(".") != -1 || this.OfferId.IndexOf(".") != -1)
            {
                base.WriteError(new ArgumentException(Strings.ErrorParametersCannotHaveEmbeddedDot), ErrorCategory.InvalidArgument, null);
            }
            this.CheckForDuplicateExistingOrganization();
            NewAcceptedDomain.ValidateDomainName(new AcceptedDomain
            {
                DomainName = new SmtpDomainWithSubdomains(this.DomainName, false),
                DomainType = AcceptedDomainType.Authoritative
            }, new Task.TaskErrorLoggingDelegate(this.WriteWrappedError));
            bool flag  = this.ServicePlanConfig.IsTemplateTenantServicePlan(this.servicePlanSettings);
            bool flag2 = TemplateTenantConfiguration.IsTemplateTenantName(this.Name);

            if (flag)
            {
                if (this.partition != PartitionId.LocalForest)
                {
                    this.WriteWarning(Strings.ErrorLocalAccountPartitionRequiredForTT);
                }
                if (!this.CreateSharedConfiguration)
                {
                    base.WriteError(new ArgumentException(Strings.CreateSharedConfigurationRequiredForTT), ErrorCategory.InvalidArgument, null);
                }
                if (!flag2)
                {
                    base.WriteError(new ArgumentException(Strings.CalculatedNameRequiredForTT(TemplateTenantConfiguration.TopLevelDomain)), ErrorCategory.InvalidArgument, null);
                }
            }
            else if (flag2)
            {
                base.WriteError(new ArgumentException(Strings.TTNameWithNonTTServiceplan(TemplateTenantConfiguration.TopLevelDomain)), ErrorCategory.InvalidArgument, null);
            }
            TaskLogger.LogExit();
        }
Esempio n. 4
0
 protected OrganizationId GetOrganizationId(OrganizationId currentOrgId, string orgName)
 {
     if (OrganizationId.ForestWideOrgId.Equals(currentOrgId) && !string.IsNullOrEmpty(orgName))
     {
         if (TemplateTenantConfiguration.IsTemplateTenantName(orgName) && TemplateTenantConfiguration.GetLocalTemplateTenant() != null)
         {
             return(TemplateTenantConfiguration.GetLocalTemplateTenant().OrganizationId);
         }
         ExchangeConfigurationUnit configurationUnit = this.GetConfigurationUnit(orgName);
         if (configurationUnit != null)
         {
             if (this.MustScopeToSharedConfiguration(configurationUnit))
             {
                 SharedConfiguration sharedConfiguration = SharedConfiguration.GetSharedConfiguration(configurationUnit.OrganizationId);
                 if (sharedConfiguration != null)
                 {
                     return(sharedConfiguration.SharedConfigurationCU.OrganizationId);
                 }
             }
             return(configurationUnit.OrganizationId);
         }
     }
     return(currentOrgId);
 }