Example #1
0
        public WorkflowAction OnSignal(WorkflowSignaledEvent @event)
        {
            //I'm a nice kid I will cancel whichever the activity in progress.
            if (@event.SignalName == "Let us have dinner")
            {
                return(CancelRequest.For(WorkflowItems.Where(i => i.IsActive)));
            }

            //I will ignore rest of the signals
            return(Ignore);
        }
Example #2
0
        public void Can_return_cancel_request_for_activity()
        {
            var activityItem  = CreateActivity("name1", "1.0", "pname");
            var workflowItems = new WorkflowItems();

            workflowItems.Add(activityItem);
            var cancelRequest = new CancelRequest(workflowItems);

            var decisions = cancelRequest.ForActivity <TestActivity>("pname").GetDecisions();

            Assert.That(decisions, Is.EqualTo(new [] { new CancelActivityDecision(Identity.New("name1", "1.0", "pname")) }));
        }
Example #3
0
        public WorkflowAction OnSignal(WorkflowSignaledEvent @event)
        {
            if (@event.SignalName == "Hello kid")
            {
                return(Signal("Hello parent", "").ReplyTo(@event));
            }

            if (@event.SignalName == "Let us have dinner")
            {
                return(CancelRequest.For(WorkflowItems.Where(i => i.IsActive)));
            }

            //I will ignore rest of the signals
            return(Ignore);
        }