protected override void InternalValidate() { TaskLogger.LogEnter(); base.InternalValidate(); if (this.GuidMatch != null && this.NameMatch != null) { base.WriteError(new RecipientTaskException(Strings.ExchangeSettingsGuidUsage), ExchangeErrorCategory.Client, this.DataObject); } this.PrivateValidate(SetExchangeSettings.GetRegisteredSchema(this.Identity.ToString(), this.Force, new Task.TaskVerboseLoggingDelegate(base.WriteVerbose), new Task.TaskErrorLoggingDelegate(base.WriteError))); TaskLogger.LogExit(); }
protected override void WriteResult(IConfigurable dataObject) { TaskLogger.LogEnter(new object[] { dataObject.Identity, dataObject }); ExchangeSettings exchangeSettings = (ExchangeSettings)dataObject; ConfigDiagnosticArgument configDiagnosticArgument = new ConfigDiagnosticArgument(this.DiagnosticArgument); if (configDiagnosticArgument.HasArgument("force")) { this.Force = true; } if (string.IsNullOrEmpty(this.ConfigName) && configDiagnosticArgument.HasArgument("configname")) { this.ConfigName = configDiagnosticArgument.GetArgument <string>("configname"); } if (exchangeSettings != null) { ConfigSchemaBase schema = null; if (SetExchangeSettings.IsSchemaRegistered(exchangeSettings.Identity.ToString())) { schema = SetExchangeSettings.GetRegisteredSchema(exchangeSettings.Identity.ToString(), this.Force, new Task.TaskVerboseLoggingDelegate(base.WriteVerbose), new Task.TaskErrorLoggingDelegate(base.WriteError)); } if (exchangeSettings.Groups != null) { foreach (SettingsGroup settingsGroup in exchangeSettings.Groups) { try { settingsGroup.Validate(schema, null); } catch (ConfigurationSettingsException ex) { base.WriteWarning(ex.Message); } } } this.ProcessDiagnostic(exchangeSettings, configDiagnosticArgument, schema); } base.WriteResult(exchangeSettings); TaskLogger.LogExit(); }