From 0bb8d9e84c8a5c5f6d59d914575f32bc0245819f Mon Sep 17 00:00:00 2001 From: erri120 Date: Mon, 6 Apr 2020 15:06:02 +0200 Subject: [PATCH] Implemented new attributes in all verbs --- Wabbajack.CLI/Verbs/AVerb.cs | 3 +++ Wabbajack.CLI/Verbs/ChangeDownload.cs | 3 --- Wabbajack.CLI/Verbs/Encrypt.cs | 1 + Wabbajack.CLI/Verbs/Validate.cs | 5 +---- 4 files changed, 5 insertions(+), 7 deletions(-) diff --git a/Wabbajack.CLI/Verbs/AVerb.cs b/Wabbajack.CLI/Verbs/AVerb.cs index 5693a520..95bf203c 100644 --- a/Wabbajack.CLI/Verbs/AVerb.cs +++ b/Wabbajack.CLI/Verbs/AVerb.cs @@ -6,6 +6,9 @@ namespace Wabbajack.CLI.Verbs { public int Execute() { + if (!CLIUtils.HasValidArguments(this)) + CLIUtils.Exit("The provided arguments are not valid! Check previous messages for more information", -1); + return Run().Result; } diff --git a/Wabbajack.CLI/Verbs/ChangeDownload.cs b/Wabbajack.CLI/Verbs/ChangeDownload.cs index bce19853..17d783a5 100644 --- a/Wabbajack.CLI/Verbs/ChangeDownload.cs +++ b/Wabbajack.CLI/Verbs/ChangeDownload.cs @@ -60,9 +60,6 @@ namespace Wabbajack.CLI.Verbs protected override async Task Run() { - if (!CLIUtils.HasValidArguments(this)) - CLIUtils.Exit("Arguments are not valid!", -1); - if (Modlist != null && (!Modlist.EndsWith(Consts.ModListExtension) && !Modlist.EndsWith("modlist.txt"))) return CLIUtils.Exit($"The file {Modlist} is not a valid modlist file!", -1); diff --git a/Wabbajack.CLI/Verbs/Encrypt.cs b/Wabbajack.CLI/Verbs/Encrypt.cs index 9213349f..1e6592da 100644 --- a/Wabbajack.CLI/Verbs/Encrypt.cs +++ b/Wabbajack.CLI/Verbs/Encrypt.cs @@ -11,6 +11,7 @@ namespace Wabbajack.CLI.Verbs [Option('n', "name", Required = true, HelpText = @"Credential to encrypt and store in AppData\Local\Wabbajack")] public string? Name { get; set; } + [IsFile(CustomMessage = "The input file %1 does not exist!")] [Option('i', "input", Required = true, HelpText = @"Source data file name")] public string? Input { get; set; } diff --git a/Wabbajack.CLI/Verbs/Validate.cs b/Wabbajack.CLI/Verbs/Validate.cs index 141c9464..d8d98670 100644 --- a/Wabbajack.CLI/Verbs/Validate.cs +++ b/Wabbajack.CLI/Verbs/Validate.cs @@ -11,6 +11,7 @@ namespace Wabbajack.CLI.Verbs [Verb("validate", HelpText = @"Validates a Modlist")] public class Validate : AVerb { + [IsFile(CustomMessage = "The modlist file %1 does not exist!")] [Option('i', "input", Required = true, HelpText = @"Modlist file")] public string? Input { get; set; } @@ -26,10 +27,6 @@ namespace Wabbajack.CLI.Verbs /// protected override async Task Run() { - if (!File.Exists(Input)) - return CLIUtils.Exit($"The file {Input} does not exist!", -1); - - if (Input != null && !Input.EndsWith(Consts.ModListExtension)) return CLIUtils.Exit($"The file {Input} does not end with {Consts.ModListExtension}!", -1);