protected override void OnMessage(MessageEventArgs e)
        {
            ResolvedCommandType resolved = CommandResolver.ResolveCommand(e.Data);
            Command             command  = Factory(resolved);

            command.Publish();
        }
Exemplo n.º 2
0
        public async Task <int> RunAsync(IReadOnlyList <string> commandLineArguments)
        {
            var optionSet = _commandOptionParser.ParseOptions(commandLineArguments);
            var command   = _commandResolver.ResolveCommand(optionSet);

            var exitCode = await command.ExecuteAsync();

            return(exitCode.Value);
        }
Exemplo n.º 3
0
        private EvaluationResult RunCommand(string commandLine)
        {
            var commandResult = commandResolver.ResolveCommand(commandLine);

            if (!commandResult.IsValid)
            {
                return(new EvaluationResult().WithError(commandResult.Errors.FirstOrDefault()?.Message));
            }

            return(commandResult.Command.Evaluate(database, commandResult.Arguments));
        }
Exemplo n.º 4
0
        public ActionResult <string> RunCommand(
            [FromServices] ICommandResolver commandResolver,
            [FromServices] IDatabase database,
            [FromQuery] string cmd)
        {
            var commandResult = commandResolver.ResolveCommand(cmd);

            if (!commandResult.IsValid)
            {
                return($"ERR {commandResult.Errors.FirstOrDefault()?.Message}");
            }

            var evalResult = commandResult.Command.Evaluate(database, commandResult.Arguments);

            if (!evalResult.IsValid)
            {
                return($"ERR {evalResult.Errors.FirstOrDefault()?.Message}");
            }

            return(evalResult.ToString());
        }
Exemplo n.º 5
0
 protected TCommand GetCommand <TCommand>() where TCommand : ICommandBase
 {
     return(_commandResolver.ResolveCommand <TCommand>(this));
 }