public CommandReturnCodes RunCommands(TextReader input, TextWriter output, Logger logger, IEnumerable <ResponseLine> responseLines) { var agent = CreateAgent(); CommandReturnCodes result = StartHost(agent, input, output); if (result != CommandReturnCodes.Ok) { return(result); } foreach (var line in responseLines) { logger.LogInfo("{0} ({1}): Running command: {2}", line.Filename, line.LineNumber, line.LineText); var args = new CoeveryParametersParser().Parse(new CommandParametersParser().Parse(line.Args)); result = (CommandReturnCodes)agent.GetType().GetMethod("RunCommand").Invoke(agent, new object[] { input, output, args.Tenant, args.Arguments.ToArray(), args.Switches }); if (result != CommandReturnCodes.Ok) { output.WriteLine("{0} ({1}): Command returned error ({2})", line.Filename, line.LineNumber, result); return(result); } } result = StopHost(agent, input, output); return(result); }
public CommandReturnCodes RunCommands(TextReader input, TextWriter output, Logger logger, IEnumerable<ResponseLine> responseLines) { var agent = CreateAgent(); CommandReturnCodes result = StartHost(agent, input, output); if (result != CommandReturnCodes.Ok) return result; foreach (var line in responseLines) { logger.LogInfo("{0} ({1}): Running command: {2}", line.Filename, line.LineNumber, line.LineText); var args = new CoeveryParametersParser().Parse(new CommandParametersParser().Parse(line.Args)); result = (CommandReturnCodes)agent.GetType().GetMethod("RunCommand").Invoke(agent, new object[] { input, output, args.Tenant, args.Arguments.ToArray(), args.Switches}); if (result != CommandReturnCodes.Ok) { output.WriteLine("{0} ({1}): Command returned error ({2})", line.Filename, line.LineNumber, result); return result; } } result = StopHost(agent, input, output); return result; }