public VariableGroupFileRepository([NotNull] IKnownLiterals knownLiterals, [NotNull] IParametersResolver parametersResolver) { _knownLiterals = knownLiterals ?? throw new ArgumentNullException(nameof(knownLiterals)); _parametersResolver = parametersResolver ?? throw new ArgumentNullException(nameof(parametersResolver)); _jsonSerializer = new JsonSerializer { Formatting = Formatting.Indented }; }
public ParametersResolver([NotNull] IUserConsole console, [NotNull] IKnownLiterals knownLiterals) { _console = console ?? throw new ArgumentNullException(nameof(console)); _knownLiterals = knownLiterals ?? throw new ArgumentNullException(nameof(knownLiterals)); _parameterPrompts = new Dictionary <ParameterPosition, string> { { ParameterPosition.Account, "VSTS account" }, { ParameterPosition.OverrideExistentTarget, $"Override existent target {YesNoPrompt}" }, { ParameterPosition.SourceGroup, "Source group name" }, { ParameterPosition.SourceProject, $"Source project or '{_knownLiterals.GroupLocationFileSelector}'" }, { ParameterPosition.TargetGroup, "Target group name" }, { ParameterPosition.TargetProject, $"Target project or '{_knownLiterals.GroupLocationFileSelector}'" }, { ParameterPosition.Token, "VSTS access token" } }; }