public BaseTaskInstanceBuilder SetManualActivationRule(string name, CMMNExpression expression) { ManualActivationRule = new ManualActivationRule { Expression = expression, Name = name }; return(this); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void testManualActivationRuleByDefaultPlanItemControl() public virtual void testManualActivationRuleByDefaultPlanItemControl() { // given PlanItemControl defaultControl = createElement(decisionTask, "ItemControl_1", typeof(DefaultControl)); ManualActivationRule manualActivationRule = createElement(defaultControl, "ManualActivationRule_1", typeof(ManualActivationRule)); ConditionExpression expression = createElement(manualActivationRule, "Expression_1", typeof(ConditionExpression)); expression.Text = "${true}"; Cmmn.validateModel(modelInstance); // when CmmnActivity newActivity = handler.handleElement(planItem, context); // then object rule = newActivity.getProperty(PROPERTY_MANUAL_ACTIVATION_RULE); assertNotNull(rule); assertTrue(rule is CaseControlRule); }
protected internal virtual void initializeManualActivationRule(CmmnElement element, CmmnActivity activity, CmmnHandlerContext context) { PlanItemControl itemControl = getItemControl(element); PlanItemControl defaultControl = getDefaultControl(element); ManualActivationRule manualActivationRule = null; if (itemControl != null) { manualActivationRule = itemControl.ManualActivationRule; } if (manualActivationRule == null && defaultControl != null) { manualActivationRule = defaultControl.ManualActivationRule; } if (manualActivationRule != null) { CaseControlRule caseRule = initializeCaseControlRule(manualActivationRule.Condition, context); activity.setProperty(PROPERTY_MANUAL_ACTIVATION_RULE, caseRule); } }
private static List <BaseCasePlanItemInstance> BuildPlanItems(tStage stage, string casePlanInstanceId) { var planItems = new List <BaseCasePlanItemInstance>(); if (stage.planItem != null) { foreach (var planItem in stage.planItem) { var planItemDef = stage.Items.First(i => i.id == planItem.definitionRef); var flowInstanceElt = BuildPlanItem(planItem.id, planItem.name, planItemDef, casePlanInstanceId); if (planItem.entryCriterion != null) { foreach (var entryCriterion in planItem.entryCriterion) { var sEntry = stage.sentry.First(s => s.id == entryCriterion.sentryRef); flowInstanceElt.EntryCriterions.Add(new Criteria(entryCriterion.name) { SEntry = BuildSEntry(sEntry) }); } } if (planItem.exitCriterion != null) { foreach (var exitCriteria in planItem.exitCriterion) { var sEntry = stage.sentry.First(s => s.id == exitCriteria.sentryRef); flowInstanceElt.ExitCriterions.Add(new Criteria(exitCriteria.name) { SEntry = BuildSEntry(sEntry) }); } } if (planItem.itemControl != null) { var baseTask = flowInstanceElt as BaseTaskOrStageElementInstance; if (planItem.itemControl.manualActivationRule != null && baseTask != null) { var manualActivationRule = new ManualActivationRule(planItem.itemControl.manualActivationRule.name); var condition = planItem.itemControl.manualActivationRule.condition; if (condition != null && condition.Text.Any()) { manualActivationRule.Expression = new CMMNExpression(condition.language, condition.Text.First()); } baseTask.ManualActivationRule = manualActivationRule; } if (planItem.itemControl.repetitionRule != null) { var repetitionRule = new RepetitionRule(planItem.itemControl.repetitionRule.name); var condition = planItem.itemControl.repetitionRule.condition; if (condition != null && condition.Text.Any()) { repetitionRule.Condition = new CMMNExpression(condition.language, condition.Text.First()); } flowInstanceElt.RepetitionRule = repetitionRule; } } planItems.Add(flowInstanceElt); } } return(planItems); }