Exemplo n.º 1
0
 public virtual ProcessDefinitionBuilder ExecutionListener(IDelegateListener <IBaseDelegateExecution> executionListener)
 {
     if (transition != null)
     {
         transition.AddExecutionListener(executionListener);
     }
     else
     {
         throw new PvmException("not in a transition scope");
     }
     return(this);
 }
Exemplo n.º 2
0
        public virtual void TestExecutionEntitySerialization()
        {
            var execution = new ExecutionEntity();

            var activityImpl = new ActivityImpl("test", null);

            activityImpl.ExecutionListeners.Add("start", new List <IDelegateListener <IBaseDelegateExecution> > {
                new TestExecutionListener()
            });
            execution.Activity = activityImpl;

            var processDefinitionImpl = new ProcessDefinitionImpl("test");

            processDefinitionImpl.ExecutionListeners.Add("start",
                                                         new List <IDelegateListener <IBaseDelegateExecution> > {
                new TestExecutionListener()
            });
            execution.ProcessDefinition = processDefinitionImpl;

            var transitionImpl = new TransitionImpl("test", new ProcessDefinitionImpl("test"));

            transitionImpl.AddExecutionListener(new TestExecutionListener());
            execution.Transition = (transitionImpl);

            execution.ProcessInstanceStartContext.Initial = activityImpl;
            execution.SuperExecution = (new ExecutionEntity());

            execution.IsActive           = true;
            execution.Canceled           = false;
            execution.BusinessKey        = "myBusinessKey";
            execution.DeleteReason       = "no reason";
            execution.ActivityInstanceId = "123";
            execution.IsScope            = false;

            var data = WriteObject(execution);

            execution = (ExecutionEntity)ReadObject(data);

            Assert.AreEqual("myBusinessKey", execution.BusinessKey);
            Assert.AreEqual("no reason", execution.DeleteReason);
            Assert.AreEqual("123", execution.ActivityInstanceId);
        }
 protected internal virtual void AddTakeEventListener(TransitionImpl transition)
 {
     transition.AddExecutionListener(ExecutionListener);
 }