コード例 #1
0
        protected override void InternalValidate()
        {
            base.InternalValidate();
            if (base.ProvisioningHandlers != null)
            {
                foreach (ProvisioningHandler provisioningHandler in base.ProvisioningHandlers)
                {
                    provisioningHandler.Validate(this.serverObject);
                }
            }
            if (!ServerComponentStateManager.IsValidComponent(this.Component))
            {
                base.WriteError(new ArgumentException(Strings.ServerComponentStateInvalidComponentName(this.Component)), ErrorCategory.InvalidArgument, null);
            }
            if (this.LocalOnly)
            {
                ServerComponentEnum serverComponentEnum;
                Enum.TryParse <ServerComponentEnum>(this.Component, true, out serverComponentEnum);
                if (serverComponentEnum == ServerComponentEnum.Monitoring || serverComponentEnum == ServerComponentEnum.RecoveryActionsEnabled)
                {
                    base.WriteError(new ArgumentException(Strings.ServerComponentStateNoLocalOnly(this.Component)), ErrorCategory.InvalidArgument, null);
                }
            }
            ServerComponentRequest serverComponentRequest;

            if (!Enum.TryParse <ServerComponentRequest>(this.Requester, true, out serverComponentRequest))
            {
                string allowedRequesters = string.Join(",", Enum.GetNames(typeof(ServerComponentRequest)));
                base.WriteError(new ArgumentException(Strings.ServerComponentStateInvalidRequester(this.Requester, allowedRequesters)), ErrorCategory.InvalidArgument, null);
            }
            if (this.LocalOnly && this.RemoteOnly)
            {
                base.WriteError(new ArgumentException(Strings.SetServerComponentStateInvalidLocalRemoteSwitch), ErrorCategory.InvalidArgument, null);
            }
        }
コード例 #2
0
 protected override void InternalValidate()
 {
     base.InternalValidate();
     if (this.Component != null && !ServerComponentStateManager.IsValidComponent(this.Component))
     {
         base.WriteError(new ArgumentException(Strings.ServerComponentStateInvalidComponentName(this.Component)), ErrorCategory.InvalidArgument, null);
     }
 }
コード例 #3
0
        protected override void InternalProcessRecord()
        {
            TaskLogger.LogEnter(new object[]
            {
                this.serverId,
                this.Component
            });
            ADComputer adcomputer = null;
            ITopologyConfigurationSession topologyConfigurationSession = DirectorySessionFactory.Default.CreateTopologyConfigurationSession(this.DomainController, true, ConsistencyMode.PartiallyConsistent, ADSessionSettings.FromRootOrgScopeSet(), 98, "InternalProcessRecord", "f:\\15.00.1497\\sources\\dev\\Management\\src\\Management\\SystemConfigurationTasks\\ComponentStates\\GetServerComponentState.cs");
            string text  = (!string.IsNullOrWhiteSpace(this.serverId.Fqdn)) ? this.serverId.Fqdn : this.serverId.ToString();
            string text2 = text;
            int    num   = text.IndexOf('.');

            if (num > 0)
            {
                text2 = text.Substring(0, num);
            }
            Server server = topologyConfigurationSession.FindServerByName(text2);

            if (server == null)
            {
                topologyConfigurationSession.UseConfigNC      = false;
                topologyConfigurationSession.UseGlobalCatalog = true;
                adcomputer = topologyConfigurationSession.FindComputerByHostName(text2);
                if (adcomputer == null)
                {
                    base.WriteError(new ADServerNotFoundException(text), ErrorCategory.InvalidArgument, null);
                }
            }
            if (string.IsNullOrEmpty(this.Component))
            {
                using (IEnumerator enumerator = Enum.GetValues(typeof(ServerComponentEnum)).GetEnumerator())
                {
                    while (enumerator.MoveNext())
                    {
                        object obj = enumerator.Current;
                        ServerComponentEnum serverComponent = (ServerComponentEnum)obj;
                        if (ServerComponentStateManager.IsValidComponent(serverComponent))
                        {
                            base.WriteObject(new ServerComponentStatePresentationObject((server != null) ? server.Id : adcomputer.Id, (server != null) ? server.Fqdn : adcomputer.DnsHostName, ServerComponentStateManager.GetComponentId(serverComponent), (server != null) ? server.ComponentStates : adcomputer.ComponentStates));
                        }
                    }
                    goto IL_1B2;
                }
            }
            base.WriteObject(new ServerComponentStatePresentationObject((server != null) ? server.Id : adcomputer.Id, (server != null) ? server.Fqdn : adcomputer.DnsHostName, this.Component, (server != null) ? server.ComponentStates : adcomputer.ComponentStates));
IL_1B2:
            TaskLogger.LogExit();
        }