示例#1
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testEntryCriteria()
        public virtual void testEntryCriteria()
        {
            // given

            // create sentry containing ifPart
            Sentry sentry = createElement(casePlanModel, "Sentry_1", typeof(Sentry));
            IfPart ifPart = createElement(sentry, "abc", typeof(IfPart));
            ConditionExpression conditionExpression = createElement(ifPart, "def", typeof(ConditionExpression));

            conditionExpression.Text = "${test}";

            // set entryCriteria
            EntryCriterion criterion = createElement(planItem, typeof(EntryCriterion));

            criterion.Sentry = sentry;

            // transform casePlanModel as parent
            CmmnActivity parent = (new CasePlanModelHandler()).handleElement(casePlanModel, context);

            context.Parent = parent;

            // transform Sentry
            CmmnSentryDeclaration sentryDeclaration = (new SentryHandler()).handleElement(sentry, context);

            // when
            CmmnActivity newActivity = handler.handleElement(planItem, context);

            // then
            assertTrue(newActivity.ExitCriteria.Count == 0);

            assertFalse(newActivity.EntryCriteria.Count == 0);
            assertEquals(1, newActivity.EntryCriteria.Count);

            assertEquals(sentryDeclaration, newActivity.EntryCriteria[0]);
        }
示例#2
0
        protected internal virtual void initializeDefinitionKey(CmmnElement element, CmmnActivity activity, CmmnHandlerContext context, BaseCallableElement callableElement)
        {
            ExpressionManager      expressionManager     = context.ExpressionManager;
            string                 definitionKey         = getDefinitionKey(element, activity, context);
            ParameterValueProvider definitionKeyProvider = createParameterValueProvider(definitionKey, expressionManager);

            callableElement.DefinitionKeyValueProvider = definitionKeyProvider;
        }
示例#3
0
        protected internal virtual void initializeVersion(CmmnElement element, CmmnActivity activity, CmmnHandlerContext context, BaseCallableElement callableElement)
        {
            ExpressionManager      expressionManager = context.ExpressionManager;
            string                 version           = getVersion(element, activity, context);
            ParameterValueProvider versionProvider   = createParameterValueProvider(version, expressionManager);

            callableElement.VersionValueProvider = versionProvider;
        }
示例#4
0
        protected internal override void initializeActivity(CmmnElement element, CmmnActivity activity, CmmnHandlerContext context)
        {
            base.initializeActivity(element, activity, context);

            initializeResultVariable(element, activity, context);

            initializeDecisionTableResultMapper(element, activity, context);
        }
示例#5
0
 protected internal virtual void addListeners(CmmnActivity activity)
 {
     if (activity != null)
     {
         activity.addBuiltInListener([email protected]_Fields.START, listener);
         activity.addBuiltInListener([email protected]_Fields.MANUAL_START, listener);
         activity.addBuiltInListener([email protected]_Fields.OCCUR, listener);
     }
 }
示例#6
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testWithoutParent()
        public virtual void testWithoutParent()
        {
            // given: a casePlanModel

            // when
            CmmnActivity activity = handler.handleElement(casePlanModel, context);

            // then
            assertNull(activity.Parent);
        }
示例#7
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testWithoutParent()
        public virtual void testWithoutParent()
        {
            // given: a planItem

            // when
            CmmnActivity activity = handler.handleElement(planItem, context);

            // then
            assertNull(activity.Parent);
        }
示例#8
0
        protected internal virtual bool isBlocking(CmmnActivityExecution execution)
        {
            CmmnActivity activity           = execution.Activity;
            object       isBlockingProperty = activity.getProperty(PROPERTY_IS_BLOCKING);

            if (isBlockingProperty != null && isBlockingProperty is bool?)
            {
                return((bool?)isBlockingProperty.Value);
            }
            return(false);
        }
示例#9
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testActivityBehavior()
        public virtual void testActivityBehavior()
        {
            // given: a case plan model

            // when
            CmmnActivity activity = handler.handleElement(casePlanModel, context);

            // then
            CmmnActivityBehavior behavior = activity.ActivityBehavior;

            assertTrue(behavior is StageActivityBehavior);
        }
示例#10
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testMilestoneActivityType()
        public virtual void testMilestoneActivityType()
        {
            // given

            // when
            CmmnActivity activity = handler.handleElement(discretionaryItem, context);

            // then
            string activityType = (string)activity.getProperty(PROPERTY_ACTIVITY_TYPE);

            assertEquals("milestone", activityType);
        }
示例#11
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testTaskActivityType()
        public virtual void testTaskActivityType()
        {
            // given

            // when
            CmmnActivity activity = handler.handleElement(planItem, context);

            // then
            string activityType = (string)activity.getProperty(PROPERTY_ACTIVITY_TYPE);

            assertEquals("task", activityType);
        }
示例#12
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testActivityBehavior()
        public virtual void testActivityBehavior()
        {
            // given: a planItem

            // when
            CmmnActivity activity = handler.handleElement(planItem, context);

            // then
            CmmnActivityBehavior behavior = activity.ActivityBehavior;

            assertTrue(behavior is TaskActivityBehavior);
        }
示例#13
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testIsBlockingEqualsTrueProperty()
        public virtual void testIsBlockingEqualsTrueProperty()
        {
            // given: a task with isBlocking = true (defaultValue)

            // when
            CmmnActivity activity = handler.handleElement(planItem, context);

            // then
            bool?isBlocking = (bool?)activity.getProperty(PROPERTY_IS_BLOCKING);

            assertTrue(isBlocking);
        }
示例#14
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testActivityBehavior()
        public virtual void testActivityBehavior()
        {
            // given: a discretionaryItem

            // when
            CmmnActivity activity = handler.handleElement(discretionaryItem, context);

            // then
            CmmnActivityBehavior behavior = activity.ActivityBehavior;

            assertTrue(behavior is HumanTaskActivityBehavior);
        }
示例#15
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testCasePlanModelActivityType()
        public virtual void testCasePlanModelActivityType()
        {
            // given

            // when
            CmmnActivity activity = handler.handleElement(casePlanModel, context);

            // then
            string activityType = (string)activity.getProperty(PROPERTY_ACTIVITY_TYPE);

            assertEquals("casePlanModel", activityType);
        }
示例#16
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testMultipleExitCriteria()
        public virtual void testMultipleExitCriteria()
        {
            // given

            // create first sentry containing ifPart
            Sentry sentry1 = createElement(casePlanModel, "Sentry_1", typeof(Sentry));
            IfPart ifPart1 = createElement(sentry1, "abc", typeof(IfPart));
            ConditionExpression conditionExpression1 = createElement(ifPart1, "def", typeof(ConditionExpression));

            conditionExpression1.Text = "${test}";

            // set first exitCriteria
            ExitCriterion criterion1 = createElement(casePlanModel, typeof(ExitCriterion));

            criterion1.Sentry = sentry1;

            // create first sentry containing ifPart
            Sentry sentry2 = createElement(casePlanModel, "Sentry_2", typeof(Sentry));
            IfPart ifPart2 = createElement(sentry2, "ghi", typeof(IfPart));
            ConditionExpression conditionExpression2 = createElement(ifPart2, "jkl", typeof(ConditionExpression));

            conditionExpression2.Text = "${test}";

            // set second exitCriteria
            ExitCriterion criterion2 = createElement(casePlanModel, typeof(ExitCriterion));

            criterion2.Sentry = sentry2;

            // transform casePlanModel
            CmmnActivity newActivity = handler.handleElement(casePlanModel, context);

            context.Parent = newActivity;
            SentryHandler sentryHandler = new SentryHandler();

            // transform first Sentry
            CmmnSentryDeclaration firstSentryDeclaration = sentryHandler.handleElement(sentry1, context);

            // transform second Sentry
            CmmnSentryDeclaration secondSentryDeclaration = sentryHandler.handleElement(sentry2, context);

            // when
            handler.initializeExitCriterias(casePlanModel, newActivity, context);

            // then
            assertTrue(newActivity.EntryCriteria.Count == 0);

            assertFalse(newActivity.ExitCriteria.Count == 0);
            assertEquals(2, newActivity.ExitCriteria.Count);

            assertTrue(newActivity.ExitCriteria.Contains(firstSentryDeclaration));
            assertTrue(newActivity.ExitCriteria.Contains(secondSentryDeclaration));
        }
示例#17
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testIsDiscretionaryProperty()
        public virtual void testIsDiscretionaryProperty()
        {
            // given:
            // a discretionary item to handle

            // when
            CmmnActivity activity = handler.handleElement(discretionaryItem, context);

            // then
            bool?discretionary = (bool?)activity.getProperty(PROPERTY_DISCRETIONARY);

            assertTrue(discretionary);
        }
示例#18
0
        // manual activation rule //////////////////////////////////////////////

        protected internal virtual bool evaluateManualActivationRule(CmmnActivityExecution execution)
        {
            bool         manualActivation     = false;
            CmmnActivity activity             = execution.Activity;
            object       manualActivationRule = activity.getProperty(PROPERTY_MANUAL_ACTIVATION_RULE);

            if (manualActivationRule != null)
            {
                CaseControlRule rule = (CaseControlRule)manualActivationRule;
                manualActivation = rule.evaluate(execution);
            }
            return(manualActivation);
        }
示例#19
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testMilestoneDescription()
        public virtual void testMilestoneDescription()
        {
            // given
            string description = "This is a milestone";

            milestone.Description = description;

            // when
            CmmnActivity activity = handler.handleElement(discretionaryItem, context);

            // then
            assertEquals(description, activity.getProperty(PROPERTY_ACTIVITY_DESCRIPTION));
        }
示例#20
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testCasePlanModelDescription()
        public virtual void testCasePlanModelDescription()
        {
            // given
            string description = "This is a casePlanModal";

            casePlanModel.Description = description;

            // when
            CmmnActivity activity = handler.handleElement(casePlanModel, context);

            // then
            assertEquals(description, activity.getProperty(PROPERTY_ACTIVITY_DESCRIPTION));
        }
示例#21
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testPlanItemDescription()
        public virtual void testPlanItemDescription()
        {
            // given
            string description = "This is a planItem";

            planItem.Description = description;

            // when
            CmmnActivity activity = handler.handleElement(planItem, context);

            // then
            assertEquals(description, activity.getProperty(PROPERTY_ACTIVITY_DESCRIPTION));
        }
示例#22
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testTaskActivityName()
        public virtual void testTaskActivityName()
        {
            // given:
            // the task has a name "A Task"
            string name = "A Task";

            task.Name = name;

            // when
            CmmnActivity activity = handler.handleElement(planItem, context);

            // then
            assertEquals(name, activity.Name);
        }
示例#23
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testHumanTaskActivityName()
        public virtual void testHumanTaskActivityName()
        {
            // given:
            // the humanTask has a name "A HumanTask"
            string name = "A HumanTask";

            humanTask.Name = name;

            // when
            CmmnActivity activity = handler.handleElement(discretionaryItem, context);

            // then
            assertEquals(name, activity.Name);
        }
示例#24
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testIsBlockingEqualsFalseProperty()
        public virtual void testIsBlockingEqualsFalseProperty()
        {
            // given:
            // a task with isBlocking = false
            task.IsBlocking = false;

            // when
            CmmnActivity activity = handler.handleElement(planItem, context);

            // then
            bool?isBlocking = (bool?)activity.getProperty(PROPERTY_IS_BLOCKING);

            assertFalse(isBlocking);
        }
示例#25
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testMilestoneActivityName()
        public virtual void testMilestoneActivityName()
        {
            // given:
            // the Milestone has a name "A Milestone"
            string name = "A Milestone";

            milestone.Name = name;

            // when
            CmmnActivity activity = handler.handleElement(discretionaryItem, context);

            // then
            assertEquals(name, activity.Name);
        }
示例#26
0
        public static CmmnActivityBehavior getActivityBehavior(CmmnExecution execution)
        {
            string id = execution.Id;

            CmmnActivity activity = execution.Activity;

            ensureNotNull(typeof(PvmException), "Case execution '" + id + "' has no current activity.", "activity", activity);

            CmmnActivityBehavior behavior = activity.ActivityBehavior;

            ensureNotNull(typeof(PvmException), "There is no behavior specified in " + activity + " for case execution '" + id + "'.", "behavior", behavior);

            return(behavior);
        }
示例#27
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testCasePlanModelActivityName()
        public virtual void testCasePlanModelActivityName()
        {
            // given:
            // the case plan model has a name "A CasePlanModel"
            string name = "A CasePlanModel";

            casePlanModel.Name = name;

            // when
            CmmnActivity activity = handler.handleElement(casePlanModel, context);

            // then
            assertEquals(name, activity.Name);
        }
示例#28
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testAutoComplete()
        public virtual void testAutoComplete()
        {
            // given
            casePlanModel.AutoComplete = true;

            // when
            CmmnActivity newActivity = handler.handleElement(casePlanModel, context);

            // then
            object autoComplete = newActivity.getProperty(PROPERTY_AUTO_COMPLETE);

            assertNotNull(autoComplete);
            assertTrue((bool?)autoComplete);
        }
示例#29
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void testWithParent()
        public virtual void testWithParent()
        {
            // given:
            // a new activity as parent
            CmmnCaseDefinition parent = new CmmnCaseDefinition("aParentActivity");

            context.Parent = parent;

            // when
            CmmnActivity activity = handler.handleElement(planItem, context);

            // then
            assertEquals(parent, activity.Parent);
            assertTrue(parent.Activities.Contains(activity));
        }
示例#30
0
        protected internal override string getDefinitionKey(CmmnElement element, CmmnActivity activity, CmmnHandlerContext context)
        {
            DecisionTask definition = getDefinition(element);
            string       decision   = definition.Decision;

            if (string.ReferenceEquals(decision, null))
            {
                DecisionRefExpression decisionExpression = definition.DecisionExpression;
                if (decisionExpression != null)
                {
                    decision = decisionExpression.Text;
                }
            }

            return(decision);
        }