@Override protected void writePlanItemDefinitionBody(CmmnModel model, Stage stage, XMLStreamWriter xtw) throws Exception { super.writePlanItemDefinitionBody(model, stage, xtw); for (PlanItem planItem : stage.getPlanItems()) { PlanItemExport.writePlanItem(model, planItem, xtw); } for (Sentry sentry : stage.getSentries()) { SentryExport.writeSentry(sentry, xtw); } for (PlanItemDefinition planItemDefinition : stage.getPlanItemDefinitions()) { PlanItemDefinitionExport.writePlanItemDefinition(model, planItemDefinition, xtw); } if (stage.isPlanModel() && stage.getExitCriteria() != null && !stage.getExitCriteria().isEmpty()) { CriteriaExport.writeCriteriaElements(ELEMENT_EXIT_CRITERION, stage.getExitCriteria(), xtw); } } }
protected void processPlanFragment(CmmnModel cmmnModel, PlanFragment planFragment) { processPlanItems(cmmnModel, planFragment); if (planFragment instanceof Stage) { Stage stage = (Stage) planFragment; for (PlanItemDefinition planItemDefinition : stage.getPlanItemDefinitions()) { if (planItemDefinition instanceof PlanFragment) { processPlanFragment(cmmnModel, (PlanFragment) planItemDefinition); } } if (!stage.getExitCriteria().isEmpty()) { resolveExitCriteriaSentry(stage); } } }
protected static void writePlanModel(Stage stage, CmmnModel model, XMLStreamWriter xtw) throws Exception { createCmmnShape(model, stage.getId(), xtw); for (Criterion criterion : stage.getExitCriteria()) { createCmmnShape(model, criterion.getId(), xtw); } }
elementArray.add(elementNode); processCriteria(caseObject.getPlanModel().getExitCriteria(), "ExitCriterion", pojoModel, elementArray);
elementArray.add(elementNode); processCriteria(caseObject.getPlanModel().getExitCriteria(), "ExitCriterion", pojoModel, elementArray);