예제 #1
0
        public async Task <TclExecutionResultViewModel> Execute(ExecutionCommandRequest model)
        {
            var ret = getTclWrapper(model.ConnectionId).Execute(model.Command);

            return(await Task.FromResult(new TclExecutionResultViewModel()
            {
                Command = model.Command,
                DateTime = DateTime.UtcNow,
                ErrorMessage = ret.ErrorMessage,
                ExecutionStatus = ret.ExecutionStatus,
                Result = ret.Result
            }));

            //var sourcefile = @"d:\test-model.tcl";
            //var commands = System.IO.File.ReadAllLines(sourcefile);
            //foreach(var command in commands)
            //{
            //    var execResult = tclInterp.Execute(command);
            //    await hubContext.Clients.Client(connectionId).SendAsync("recived-execution-message", new TclExecutionResultViewModel
            //    {
            //        Command = command,
            //        DateTime = DateTime.UtcNow,
            //        ErrorMessage = execResult.ErrorMessage,
            //        ExecutionStatus = execResult.ExecutionStatus,
            //        Result = execResult.Result,
            //    });
            //}

            //var ret = tclInterp.Execute("wipe");
            //return new TclExecutionResultViewModel()
            //{
            //    Command = "wipe",
            //    DateTime = DateTime.UtcNow,
            //    ErrorMessage = ret.ErrorMessage,
            //    ExecutionStatus = ret.ExecutionStatus,
            //    Result = ret.Result
            //};
        }
예제 #2
0
 public async Task <IActionResult> Execute([FromBody] ExecutionCommandRequest model)
 {
     return(Ok(await openseesService.Execute(model)));
 }