public static async Task ExecuteAsync()

in Notation.Plugin.AzureKeyVault/Program.cs [69:98]


        public static async Task ExecuteAsync(string[] args)
        {
            if (args.Length < 1)
            {
                PrintHelp();
                return;
            }

            IPluginCommand? cmd = null;
            switch (args[0])
            {
                case "get-plugin-metadata":
                    cmd = new GetPluginMetadata();
                    break;
                case "describe-key":
                    cmd = new DescribeKey(PluginIO.ReadInput());
                    break;
                case "generate-signature":
                    cmd = new GenerateSignature(PluginIO.ReadInput());
                    break;
                default:
                    throw new ValidationException($"Invalid command: {args[0]}");
            }

            // execute the command
            var response = await cmd.RunAsync();

            // write output
            Console.WriteLine(response.ToJson());
        }