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); } }
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); } }
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(); }