public async Task <IActionResult> Suspend(string id, [FromBody] SuspendCommand suspendCommand, CancellationToken token) { try { suspendCommand.CasePlanInstanceId = id; await _mediator.Send(new SuspendCommand(id, null), token); return(new OkResult()); } catch (UnknownCasePlanInstanceException) { return(this.ToError(new Dictionary <string, string> { { "bad_request", "case instance doesn't exist" } }, HttpStatusCode.NotFound, Request)); } catch (UnknownCasePlanElementInstanceException) { return(this.ToError(new Dictionary <string, string> { { "bad_request", "case instance element doesn't exist" } }, HttpStatusCode.NotFound, Request)); } catch (AggregateValidationException ex) { return(this.ToError(ex.Errors, HttpStatusCode.BadRequest, Request)); } catch (Exception ex) { return(this.ToError(new Dictionary <string, string> { { "invalid_request", ex.Message } }, HttpStatusCode.BadRequest, Request)); } }
private void RaiseCanExecute() { StartCommand.RaiseCanExecuteChanged(); RestoreCommand.RaiseCanExecuteChanged(); StopCommand.RaiseCanExecuteChanged(); SuspendCommand.RaiseCanExecuteChanged(); ResumeCommand.RaiseCanExecuteChanged(); }
public void AccountSuspend_Execute_ReturnsNotFoundMessage() { var command = new SuspendCommand(_console, LoggerMock.GetLogger <SuspendCommand>().Object, _accountService.Object) { User = "******" }; var resultMessage = command.Execute(); Assert.Equal("User [email protected] was not found", resultMessage); }
public void EngineSuspend_Execute_ReturnsNotFoundMessage() { var command = new SuspendCommand(_console, LoggerMock.GetLogger <SuspendCommand>().Object, _engineService.Object) { Name = "Engine02" }; var resultMessage = command.Execute(); Assert.Equal("Engine Engine02 was not found", resultMessage); }
public void EngineSuspend_Execute_ReturnsSuccessMessage() { var command = new SuspendCommand(_console, LoggerMock.GetLogger <SuspendCommand>().Object, _engineService.Object) { Name = "Engine01" }; var resultMessage = command.Execute(); Assert.Equal("Engine Engine01 has been suspended successfully", resultMessage); }
public void CreateSuspendCommand() { // Arrange const int commandId = 3; // Act var suspendCommand = new SuspendCommand(commandId); // Assert Assert.AreEqual(commandId, suspendCommand.Id); Assert.AreEqual( string.Format("{{\"command\":\"suspend\",\"seq\":{0},\"type\":\"request\",\"arguments\":null}}", commandId), suspendCommand.ToString()); }
public Task PublishExternalEvt(string evt, string casePlanInstanceId, string casePlanElementInstanceId, Dictionary <string, string> parameters, CancellationToken token) { IBaseRequest request = null; switch (evt) { case CMMNConstants.ExternalTransitionNames.AddChild: request = new AddChildCommand(casePlanInstanceId, casePlanElementInstanceId) { Parameters = parameters }; break; case CMMNConstants.ExternalTransitionNames.Close: request = new CloseCommand(casePlanInstanceId) { Parameters = parameters }; break; case CMMNConstants.ExternalTransitionNames.Complete: request = new CompleteCommand(casePlanInstanceId, casePlanElementInstanceId) { Parameters = parameters }; break; case CMMNConstants.ExternalTransitionNames.Disable: request = new DisableCommand(casePlanInstanceId, casePlanElementInstanceId) { Parameters = parameters }; break; case CMMNConstants.ExternalTransitionNames.Occur: request = new OccurCommand(casePlanInstanceId, casePlanElementInstanceId) { Parameters = parameters }; break; case CMMNConstants.ExternalTransitionNames.Reactivate: request = new ReactivateCommand(casePlanInstanceId, casePlanElementInstanceId) { Parameters = parameters }; break; case CMMNConstants.ExternalTransitionNames.Reenable: request = new ReenableCommand(casePlanInstanceId, casePlanElementInstanceId) { Parameters = parameters }; break; case CMMNConstants.ExternalTransitionNames.Resume: request = new ResumeCommand(casePlanInstanceId, casePlanElementInstanceId) { Parameters = parameters }; break; case CMMNConstants.ExternalTransitionNames.Suspend: request = new SuspendCommand(casePlanInstanceId, casePlanElementInstanceId) { Parameters = parameters }; break; case CMMNConstants.ExternalTransitionNames.Terminate: request = new TerminateCommand(casePlanInstanceId, casePlanElementInstanceId) { Parameters = parameters }; break; case CMMNConstants.ExternalTransitionNames.ManualStart: request = new ActivateCommand(casePlanInstanceId, casePlanElementInstanceId) { Parameters = parameters }; break; } return(_mediator.Send(request, token)); }