Beispiel #1
0
        public static void Run(RenderFromFileOptions o, RunTimeEnvironment rte, Helpers sys)
        {
            var ext             = (Path.GetExtension(o.Arguments)).ToLowerInvariant();
            var indirectOptions = new RenderOptions();

            switch (ext)
            {
            case ".yaml":
                indirectOptions =
                    sys.GetOrQuit(
                        () => new Deserializer().Deserialize <RenderOptions>(File.ReadAllText(o.Arguments)),
                        "Unable to load/parse argument file");
                break;

            case ".json":
                indirectOptions =
                    sys.GetOrQuit(() => JsonSerializer.Deserialize <RenderOptions>(File.ReadAllText(o.Arguments)),
                                  "Unable to load/parse argument file");
                break;

            default:
                sys.ExitHandler($"unrecognised extension '{ext}' for arguments file");
                return;
            }

            CmdRender.Run(indirectOptions, rte, sys);
        }
Beispiel #2
0
 private static void Main(string[] args)
 {
     var rte    = new RunTimeEnvironment(new FileSystemOperations());
     var sys    = new Helpers();
     var result = Parser.Default
                  .ParseArguments(args,
                                  typeof(RenderOptions),
                                  typeof(RenderFromFileOptions),
                                  typeof(CmdInfo.Options)
                                  )
                  .WithParsed <CmdInfo.Options>(o => CmdInfo.Run(o, rte).Wait())
                  .WithParsed <RenderOptions>(o => CmdRender.Run(o, rte, sys))
                  .WithParsed <RenderFromFileOptions>(o => CmdRenderFromFile.Run(o, rte, sys))
     ;
 }
Beispiel #3
0
        public static void Run(RenderOptions options, RunTimeEnvironment rte, Helpers sys)
        {
            var cmd = new CmdRender(options, rte, sys);

            cmd.Run();
        }