public PublishingTargetConfigurationCommand(IUserInterface userInterface, IPublishingTargetConfigurationCommandActionParser publishingTargetConfigurationCommandActionParser, IPublishConfigurationAccessor publishConfigurationAccessor) { if (userInterface == null) { throw new ArgumentNullException("userInterface"); } if (publishingTargetConfigurationCommandActionParser == null) { throw new ArgumentNullException("publishingTargetConfigurationCommandActionParser"); } if (publishConfigurationAccessor == null) { throw new ArgumentNullException("publishConfigurationAccessor"); } this.userInterface = userInterface; this.publishingTargetConfigurationCommandActionParser = publishingTargetConfigurationCommandActionParser; this.publishConfigurationAccessor = publishConfigurationAccessor; this.Attributes = new CommandAttributes { CommandName = CommandName, AlternativeCommandNames = this.AlternativeCommandNames, RequiredArguments = new[] { ArgumentNameAction, ArgumentNamePublishConfigurationName, ArgumentNamePublishLocation, ArgumentNameApiKey }, PositionalArguments = new[] { ArgumentNameAction, ArgumentNamePublishConfigurationName, ArgumentNamePublishLocation, ArgumentNameApiKey }, Description = Resources.PublishingTargetConfigurationCommand.CommandDescriptionText, Usage = string.Format( "{0} <{1}> <{2}> <{3}>", CommandName, string.Join("|", this.AllowedActions), ArgumentNamePublishConfigurationName, ArgumentNamePublishLocation), Examples = new Dictionary<string, string> { { string.Format( "{0} {1} \"{2}\" \"{3}\" \"{4}\"", CommandName, PublishingTargetConfigurationCommandAction.Add, Resources.PublishingTargetConfigurationCommand.SamplePublishingTargetName, Resources.PublishingTargetConfigurationCommand.SamplePublishingLocation, Resources.PublishingTargetConfigurationCommand.SampleApiKey), Resources.PublishingTargetConfigurationCommand.AddCommandExampleDescriptionNamedArguments }, { string.Format( "{0} -{1}={2} -{3}=\"{4}\" -{5}=\"{6}\" -{7}=\"{8}\"", CommandName, ArgumentNameAction, PublishingTargetConfigurationCommandAction.Add, ArgumentNamePublishConfigurationName, Resources.PublishingTargetConfigurationCommand.SamplePublishingTargetName, ArgumentNamePublishLocation, Resources.PublishingTargetConfigurationCommand.SamplePublishingLocation, ArgumentNameApiKey, Resources.PublishingTargetConfigurationCommand.SampleApiKey), Resources.PublishingTargetConfigurationCommand.AddCommandExampleDescriptionNamedArguments }, { string.Format( "{0} {1} \"{2}\"", CommandName, PublishingTargetConfigurationCommandAction.Delete, Resources.PublishingTargetConfigurationCommand.SamplePublishingTargetName), Resources.PublishingTargetConfigurationCommand.DeleteCommandExampleDescriptionPositionalArguments }, { string.Format("{0} {1}", CommandName, PublishingTargetConfigurationCommandAction.Reset), Resources.PublishingTargetConfigurationCommand.ResetCommandExampleDescription }, { string.Format("{0} {1}", CommandName, PublishingTargetConfigurationCommandAction.List), Resources.PublishingTargetConfigurationCommand.ListCommandExampleDescription } }, ArgumentDescriptions = new Dictionary<string, string> { { ArgumentNameAction, string.Format( Resources.PublishingTargetConfigurationCommand.ArgumentDescriptionPublishingTargetActionTemplate, string.Join(", ", this.AllowedActions)) }, { ArgumentNamePublishConfigurationName, Resources.PublishingTargetConfigurationCommand.ArgumentDescriptionPublishConfigurationName }, { ArgumentNamePublishLocation, Resources.PublishingTargetConfigurationCommand.ArgumentDescriptionPublishLocation }, { ArgumentNameApiKey, Resources.PublishingTargetConfigurationCommand.ArgumentDescriptionApiKey } } }; this.Arguments = new Dictionary<string, string>(); }
public void Setup() { this.publishingTargetConfigurationCommandActionParser = new PublishingTargetConfigurationCommandActionParser(); }