Exemplo n.º 1
0
        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));
            }
        }
Exemplo n.º 2
0
 private void RaiseCanExecute()
 {
     StartCommand.RaiseCanExecuteChanged();
     RestoreCommand.RaiseCanExecuteChanged();
     StopCommand.RaiseCanExecuteChanged();
     SuspendCommand.RaiseCanExecuteChanged();
     ResumeCommand.RaiseCanExecuteChanged();
 }
Exemplo n.º 3
0
        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);
        }
Exemplo n.º 4
0
        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);
        }
Exemplo n.º 5
0
        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);
        }
Exemplo n.º 6
0
        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));
            }