org.camunda.bpm.model.dmn.instance.Output Java Examples
The following examples show how to use
org.camunda.bpm.model.dmn.instance.Output.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example #1
Source File: DmnHelper.java From camunda-bpm-platform with Apache License 2.0 | 6 votes |
public static DmnModelInstance createSimpleDmnModel(final String decisionKey) { final DmnModelInstance modelInstance = Dmn.createEmptyModel(); final Definitions definitions = generateNamedElement(Definitions.class, "definitions", modelInstance); definitions.setNamespace(TEST_NAMESPACE); modelInstance.setDefinitions(definitions); Decision decision = generateNamedElement(Decision.class, "decision1", modelInstance); decision.setId(decisionKey); DecisionTable decisionTable = generateElement(DecisionTable.class, modelInstance); decision.setExpression(decisionTable); Output output = generateElement(Output.class, modelInstance); decisionTable.getOutputs().add(output); definitions.addChildElement(decision); return modelInstance; }
Example #2
Source File: DmnModelElementInstanceCmdTest.java From camunda-bpm-platform with Apache License 2.0 | 6 votes |
@Deployment(resources = "org/camunda/bpm/engine/test/repository/one.dmn") public void testRepositoryService() { String decisionDefinitionId = repositoryService .createDecisionDefinitionQuery() .decisionDefinitionKey(DECISION_KEY) .singleResult() .getId(); DmnModelInstance modelInstance = repositoryService.getDmnModelInstance(decisionDefinitionId); assertNotNull(modelInstance); Collection<Decision> decisions = modelInstance.getModelElementsByType(Decision.class); assertEquals(1, decisions.size()); Collection<DecisionTable> decisionTables = modelInstance.getModelElementsByType(DecisionTable.class); assertEquals(1, decisionTables.size()); Collection<Input> inputs = modelInstance.getModelElementsByType(Input.class); assertEquals(1, inputs.size()); Collection<Output> outputs = modelInstance.getModelElementsByType(Output.class); assertEquals(1, outputs.size()); Collection<Rule> rules = modelInstance.getModelElementsByType(Rule.class); assertEquals(2, rules.size()); }
Example #3
Source File: ExpressionLanguageTest.java From camunda-bpm-platform with Apache License 2.0 | 6 votes |
@Test @DmnModelResource(resource = EXPRESSION_LANGUAGE_DMN) public void shouldReadExpressionLanguage() { Definitions definitions = modelInstance.getDefinitions(); assertThat(definitions.getExpressionLanguage()).isEqualTo(EXPRESSION_LANGUAGE); DecisionTable decisionTable = modelInstance.getModelElementById("decisionTable"); Input input = decisionTable.getInputs().iterator().next(); assertThat(input.getInputExpression().getExpressionLanguage()).isEqualTo(EXPRESSION_LANGUAGE); assertThat(input.getInputValues().getExpressionLanguage()).isEqualTo(EXPRESSION_LANGUAGE); Output output = decisionTable.getOutputs().iterator().next(); assertThat(output.getOutputValues().getExpressionLanguage()).isEqualTo(EXPRESSION_LANGUAGE); Rule rule = decisionTable.getRules().iterator().next(); InputEntry inputEntry = rule.getInputEntries().iterator().next(); assertThat(inputEntry.getExpressionLanguage()).isEqualTo(EXPRESSION_LANGUAGE); OutputEntry outputEntry = rule.getOutputEntries().iterator().next(); assertThat(outputEntry.getExpressionLanguage()).isEqualTo(EXPRESSION_LANGUAGE); }
Example #4
Source File: DefaultElementTransformHandlerRegistry.java From camunda-engine-dmn with Apache License 2.0 | 6 votes |
protected static Map<Class<? extends DmnModelElementInstance>, DmnElementTransformHandler> getDefaultElementTransformHandlers() { Map<Class<? extends DmnModelElementInstance>, DmnElementTransformHandler> handlers = new HashMap<Class<? extends DmnModelElementInstance>, DmnElementTransformHandler>(); handlers.put(Definitions.class, new DmnDecisionRequirementsGraphTransformHandler()); handlers.put(Decision.class, new DmnDecisionTransformHandler()); handlers.put(DecisionTable.class, new DmnDecisionTableTransformHandler()); handlers.put(Input.class, new DmnDecisionTableInputTransformHandler()); handlers.put(InputExpression.class, new DmnDecisionTableInputExpressionTransformHandler()); handlers.put(Output.class, new DmnDecisionTableOutputTransformHandler()); handlers.put(Rule.class, new DmnDecisionTableRuleTransformHandler()); handlers.put(InputEntry.class, new DmnDecisionTableConditionTransformHandler()); handlers.put(OutputEntry.class, new DmnLiternalExpressionTransformHandler()); handlers.put(LiteralExpression.class, new DmnLiternalExpressionTransformHandler()); handlers.put(Variable.class, new DmnVariableTransformHandler()); return handlers; }
Example #5
Source File: DefaultElementTransformHandlerRegistry.java From camunda-bpm-platform with Apache License 2.0 | 6 votes |
protected static Map<Class<? extends DmnModelElementInstance>, DmnElementTransformHandler> getDefaultElementTransformHandlers() { Map<Class<? extends DmnModelElementInstance>, DmnElementTransformHandler> handlers = new HashMap<Class<? extends DmnModelElementInstance>, DmnElementTransformHandler>(); handlers.put(Definitions.class, new DmnDecisionRequirementsGraphTransformHandler()); handlers.put(Decision.class, new DmnDecisionTransformHandler()); handlers.put(DecisionTable.class, new DmnDecisionTableTransformHandler()); handlers.put(Input.class, new DmnDecisionTableInputTransformHandler()); handlers.put(InputExpression.class, new DmnDecisionTableInputExpressionTransformHandler()); handlers.put(Output.class, new DmnDecisionTableOutputTransformHandler()); handlers.put(Rule.class, new DmnDecisionTableRuleTransformHandler()); handlers.put(InputEntry.class, new DmnDecisionTableConditionTransformHandler()); handlers.put(OutputEntry.class, new DmnLiternalExpressionTransformHandler()); handlers.put(LiteralExpression.class, new DmnLiternalExpressionTransformHandler()); handlers.put(Variable.class, new DmnVariableTransformHandler()); return handlers; }
Example #6
Source File: DmnDecisionTableOutputTransformHandler.java From camunda-bpm-platform with Apache License 2.0 | 5 votes |
protected DmnTypeDefinition getTypeDefinition(DmnElementTransformContext context, Output output) { String typeRef = output.getTypeRef(); if (typeRef != null) { DmnDataTypeTransformer transformer = context.getDataTypeTransformerRegistry().getTransformer(typeRef); return new DmnTypeDefinitionImpl(typeRef, transformer); } else { return new DefaultTypeDefinition(); } }
Example #7
Source File: DecisionDefinitionDeployerTest.java From camunda-bpm-platform with Apache License 2.0 | 5 votes |
protected static DmnModelInstance createDmnModelInstance() { DmnModelInstance modelInstance = Dmn.createEmptyModel(); Definitions definitions = modelInstance.newInstance(Definitions.class); definitions.setId(DmnModelConstants.DMN_ELEMENT_DEFINITIONS); definitions.setName(DmnModelConstants.DMN_ELEMENT_DEFINITIONS); definitions.setNamespace(DmnModelConstants.CAMUNDA_NS); modelInstance.setDefinitions(definitions); Decision decision = modelInstance.newInstance(Decision.class); decision.setId("Decision-1"); decision.setName("foo"); decision.setCamundaHistoryTimeToLive(5); modelInstance.getDefinitions().addChildElement(decision); DecisionTable decisionTable = modelInstance.newInstance(DecisionTable.class); decisionTable.setId(DmnModelConstants.DMN_ELEMENT_DECISION_TABLE); decisionTable.setHitPolicy(HitPolicy.FIRST); decision.addChildElement(decisionTable); Input input = modelInstance.newInstance(Input.class); input.setId("Input-1"); input.setLabel("Input"); decisionTable.addChildElement(input); InputExpression inputExpression = modelInstance.newInstance(InputExpression.class); inputExpression.setId("InputExpression-1"); Text inputExpressionText = modelInstance.newInstance(Text.class); inputExpressionText.setTextContent("input"); inputExpression.setText(inputExpressionText); inputExpression.setTypeRef("string"); input.setInputExpression(inputExpression); Output output = modelInstance.newInstance(Output.class); output.setName("output"); output.setLabel("Output"); output.setTypeRef("string"); decisionTable.addChildElement(output); return modelInstance; }
Example #8
Source File: GenerateIdTest.java From camunda-bpm-platform with Apache License 2.0 | 5 votes |
@Test public void shouldGenerateIdsOnCreate() { DmnModelInstance modelInstance = Dmn.createEmptyModel(); Definitions definitions = modelInstance.newInstance(Definitions.class); assertThat(definitions.getId()).isNotNull(); Decision decision = modelInstance.newInstance(Decision.class); assertThat(decision.getId()).isNotNull(); DecisionTable decisionTable = modelInstance.newInstance(DecisionTable.class); assertThat(decisionTable.getId()).isNotNull(); Output output = modelInstance.newInstance(Output.class); assertThat(output.getId()).isNotNull(); }
Example #9
Source File: GenerateIdTest.java From camunda-bpm-platform with Apache License 2.0 | 5 votes |
@Test public void shouldNotGenerateIdsOnRead() { DmnModelInstance modelInstance = Dmn.readModelFromStream(GenerateIdTest.class.getResourceAsStream("GenerateIdTest.dmn")); Definitions definitions = modelInstance.getDefinitions(); assertThat(definitions.getId()).isNull(); Decision decision = modelInstance.getModelElementsByType(Decision.class).iterator().next(); assertThat(decision.getId()).isNull(); DecisionTable decisionTable = modelInstance.getModelElementsByType(DecisionTable.class).iterator().next(); assertThat(decisionTable.getId()).isNull(); Output output = modelInstance.getModelElementsByType(Output.class).iterator().next(); assertThat(output.getId()).isNull(); }
Example #10
Source File: DecisionTableImpl.java From camunda-bpm-platform with Apache License 2.0 | 5 votes |
public static void registerType(ModelBuilder modelBuilder) { ModelElementTypeBuilder typeBuilder = modelBuilder.defineType(DecisionTable.class, DMN_ELEMENT_DECISION_TABLE) .namespaceUri(DMN11_NS) .extendsType(Expression.class) .instanceProvider(new ModelTypeInstanceProvider<DecisionTable>() { public DecisionTable newInstance(ModelTypeInstanceContext instanceContext) { return new DecisionTableImpl(instanceContext); } }); hitPolicyAttribute = typeBuilder.namedEnumAttribute(DMN_ATTRIBUTE_HIT_POLICY, HitPolicy.class) .defaultValue(HitPolicy.UNIQUE) .build(); aggregationAttribute = typeBuilder.enumAttribute(DMN_ATTRIBUTE_AGGREGATION, BuiltinAggregator.class) .build(); preferredOrientationAttribute = typeBuilder.namedEnumAttribute(DMN_ATTRIBUTE_PREFERRED_ORIENTATION, DecisionTableOrientation.class) .defaultValue(DecisionTableOrientation.Rule_as_Row) .build(); outputLabelAttribute = typeBuilder.stringAttribute(DMN_ATTRIBUTE_OUTPUT_LABEL) .build(); SequenceBuilder sequenceBuilder = typeBuilder.sequence(); inputCollection = sequenceBuilder.elementCollection(Input.class) .build(); outputCollection = sequenceBuilder.elementCollection(Output.class) .required() .build(); ruleCollection = sequenceBuilder.elementCollection(Rule.class) .build(); typeBuilder.build(); }
Example #11
Source File: OutputImpl.java From camunda-bpm-platform with Apache License 2.0 | 5 votes |
public static void registerType(ModelBuilder modelBuilder) { ModelElementTypeBuilder typeBuilder = modelBuilder.defineType(Output.class, DMN_ELEMENT_OUTPUT) .namespaceUri(DMN11_NS) .extendsType(OutputClause.class) .instanceProvider(new ModelTypeInstanceProvider<Output>() { public Output newInstance(ModelTypeInstanceContext instanceContext) { return new OutputImpl(instanceContext); } }); typeBuilder.build(); }
Example #12
Source File: DmnTransformListenerTest.java From camunda-bpm-platform with Apache License 2.0 | 5 votes |
@Test public void shouldVerifyTransformedOutput() { dmnEngine.parseDecisionRequirementsGraph(IoUtil.fileAsStream(DECISION_TRANSFORM_DMN)); DmnDecisionTableOutputImpl dmnOutput = listener.getDmnOutput(); Output output = listener.getOutput(); assertThat(dmnOutput.getId()) .isEqualTo(output.getId()) .isEqualTo("output1"); }
Example #13
Source File: DefaultDmnTransform.java From camunda-bpm-platform with Apache License 2.0 | 5 votes |
protected DmnDecisionTableOutputImpl transformDecisionTableOutput(Output output) { DmnElementTransformHandler<Output, DmnDecisionTableOutputImpl> handler = handlerRegistry.getHandler(Output.class); DmnDecisionTableOutputImpl dmnOutput = handler.handleElement(this, output); // validate output id if (dmnOutput.getId() == null) { throw LOG.decisionTableOutputIdIsMissing(decision, dmnOutput); } return dmnOutput; }
Example #14
Source File: DmnDecisionTableOutputTransformHandler.java From camunda-bpm-platform with Apache License 2.0 | 5 votes |
protected DmnDecisionTableOutputImpl createFromOutput(DmnElementTransformContext context, Output output) { DmnDecisionTableOutputImpl decisionTableOutput = createDmnElement(context, output); decisionTableOutput.setId(output.getId()); decisionTableOutput.setName(output.getLabel()); decisionTableOutput.setOutputName(output.getName()); decisionTableOutput.setTypeDefinition(getTypeDefinition(context, output)); return decisionTableOutput; }
Example #15
Source File: DmnDecisionTableOutputTransformHandler.java From camunda-engine-dmn with Apache License 2.0 | 5 votes |
protected DmnDecisionTableOutputImpl createFromOutput(DmnElementTransformContext context, Output output) { DmnDecisionTableOutputImpl decisionTableOutput = createDmnElement(context, output); decisionTableOutput.setId(output.getId()); decisionTableOutput.setName(output.getLabel()); decisionTableOutput.setOutputName(output.getName()); decisionTableOutput.setTypeDefinition(getTypeDefinition(context, output)); return decisionTableOutput; }
Example #16
Source File: DmnDecisionTableOutputTransformHandler.java From camunda-engine-dmn with Apache License 2.0 | 5 votes |
protected DmnTypeDefinition getTypeDefinition(DmnElementTransformContext context, Output output) { String typeRef = output.getTypeRef(); if (typeRef != null) { DmnDataTypeTransformer transformer = context.getDataTypeTransformerRegistry().getTransformer(typeRef); return new DmnTypeDefinitionImpl(typeRef, transformer); } else { return new DefaultTypeDefinition(); } }
Example #17
Source File: DefaultDmnTransform.java From camunda-engine-dmn with Apache License 2.0 | 5 votes |
protected DmnDecisionTableOutputImpl transformDecisionTableOutput(Output output) { DmnElementTransformHandler<Output, DmnDecisionTableOutputImpl> handler = handlerRegistry.getHandler(Output.class); DmnDecisionTableOutputImpl dmnOutput = handler.handleElement(this, output); // validate output id if (dmnOutput.getId() == null) { throw LOG.decisionTableOutputIdIsMissing(decision, dmnOutput); } return dmnOutput; }
Example #18
Source File: DmnTransformListenerTest.java From camunda-engine-dmn with Apache License 2.0 | 5 votes |
@Test public void shouldVerifyTransformedOutput() { dmnEngine.parseDecisionRequirementsGraph(IoUtil.fileAsStream(DECISION_TRANSFORM_DMN)); DmnDecisionTableOutputImpl dmnOutput = listener.getDmnOutput(); Output output = listener.getOutput(); assertThat(dmnOutput.getId()) .isEqualTo(output.getId()) .isEqualTo("output1"); }
Example #19
Source File: DmnTransformListenerTest.java From camunda-bpm-platform with Apache License 2.0 | 4 votes |
public Output getOutput() { return output; }
Example #20
Source File: DmnDecisionTableOutputTransformHandler.java From camunda-engine-dmn with Apache License 2.0 | 4 votes |
protected DmnDecisionTableOutputImpl createDmnElement(DmnElementTransformContext context, Output output) { return new DmnDecisionTableOutputImpl(); }
Example #21
Source File: DefaultDmnTransform.java From camunda-engine-dmn with Apache License 2.0 | 4 votes |
protected DmnDecisionTableImpl transformDecisionTable(DecisionTable decisionTable) { DmnElementTransformHandler<DecisionTable, DmnDecisionTableImpl> handler = handlerRegistry.getHandler(DecisionTable.class); DmnDecisionTableImpl dmnDecisionTable = handler.handleElement(this, decisionTable); for (Input input : decisionTable.getInputs()) { parent = dmnDecisionTable; this.decisionTable = dmnDecisionTable; DmnDecisionTableInputImpl dmnInput = transformDecisionTableInput(input); if (dmnInput != null) { dmnDecisionTable.getInputs().add(dmnInput); notifyTransformListeners(input, dmnInput); } } boolean needsName = decisionTable.getOutputs().size() > 1; Set<String> usedNames = new HashSet<String>(); for (Output output : decisionTable.getOutputs()) { parent = dmnDecisionTable; this.decisionTable = dmnDecisionTable; DmnDecisionTableOutputImpl dmnOutput = transformDecisionTableOutput(output); if (dmnOutput != null) { // validate output name String outputName = dmnOutput.getOutputName(); if (needsName && outputName == null) { throw LOG.compoundOutputsShouldHaveAnOutputName(dmnDecisionTable, dmnOutput); } if (usedNames.contains(outputName)) { throw LOG.compoundOutputWithDuplicateName(dmnDecisionTable, dmnOutput); } usedNames.add(outputName); dmnDecisionTable.getOutputs().add(dmnOutput); notifyTransformListeners(output, dmnOutput); } } for (Rule rule : decisionTable.getRules()) { parent = dmnDecisionTable; this.decisionTable = dmnDecisionTable; DmnDecisionTableRuleImpl dmnRule = transformDecisionTableRule(rule); if (dmnRule != null) { dmnDecisionTable.getRules().add(dmnRule); notifyTransformListeners(rule, dmnRule); } } return dmnDecisionTable; }
Example #22
Source File: ExpressionLanguageTest.java From camunda-bpm-platform with Apache License 2.0 | 4 votes |
@Test public void shouldWriteExpressionLanguage() throws Exception { modelInstance = Dmn.createEmptyModel(); Definitions definitions = generateNamedElement(Definitions.class, "definitions"); definitions.setNamespace(TEST_NAMESPACE); definitions.setExpressionLanguage(EXPRESSION_LANGUAGE); modelInstance.setDocumentElement(definitions); Decision decision = generateNamedElement(Decision.class, "Check Order"); definitions.addChildElement(decision); DecisionTable decisionTable = generateElement(DecisionTable.class); decision.addChildElement(decisionTable); Input input = generateElement(Input.class); decisionTable.getInputs().add(input); InputExpression inputExpression = generateElement(InputExpression.class); inputExpression.setExpressionLanguage(EXPRESSION_LANGUAGE); input.setInputExpression(inputExpression); InputValues inputValues = generateElement(InputValues.class); inputValues.setExpressionLanguage(EXPRESSION_LANGUAGE); inputValues.setText(generateElement(Text.class)); input.setInputValues(inputValues); Output output = generateElement(Output.class); decisionTable.getOutputs().add(output); OutputValues outputValues = generateElement(OutputValues.class); outputValues.setExpressionLanguage(EXPRESSION_LANGUAGE); outputValues.setText(generateElement(Text.class)); output.setOutputValues(outputValues); Rule rule = generateElement(Rule.class); decisionTable.getRules().add(rule); InputEntry inputEntry = generateElement(InputEntry.class); inputEntry.setExpressionLanguage(EXPRESSION_LANGUAGE); inputEntry.setText(generateElement(Text.class)); rule.getInputEntries().add(inputEntry); OutputEntry outputEntry = generateElement(OutputEntry.class); outputEntry.setExpressionLanguage(EXPRESSION_LANGUAGE); rule.getOutputEntries().add(outputEntry); assertModelEqualsFile(EXPRESSION_LANGUAGE_DMN); }
Example #23
Source File: DefaultDmnTransform.java From camunda-engine-dmn with Apache License 2.0 | 4 votes |
protected void notifyTransformListeners(Output output, DmnDecisionTableOutputImpl dmnOutput) { for (DmnTransformListener transformListener : transformListeners) { transformListener.transformDecisionTableOutput(output, dmnOutput); } }
Example #24
Source File: DecisionTableImpl.java From camunda-bpm-platform with Apache License 2.0 | 4 votes |
public Collection<Output> getOutputs() { return outputCollection.get(this); }
Example #25
Source File: DmnTransformListenerTest.java From camunda-bpm-platform with Apache License 2.0 | 4 votes |
public void transformDecisionTableOutput(Output output, DmnDecisionTableOutputImpl dmnOutput) { this.output = output; this.dmnOutput = dmnOutput; }
Example #26
Source File: IndexedDmnColumns.java From camunda-dmn-xlsx with Apache License 2.0 | 4 votes |
public void addOutput(String column, Output output) { this.orderedOutputs.add(output); this.outputColumns.put(output, column); }
Example #27
Source File: DmnTransformListenerTest.java From camunda-engine-dmn with Apache License 2.0 | 4 votes |
public Output getOutput() { return output; }
Example #28
Source File: DmnTransformListenerTest.java From camunda-engine-dmn with Apache License 2.0 | 4 votes |
public void transformDecisionTableOutput(Output output, DmnDecisionTableOutputImpl dmnOutput) { this.output = output; this.dmnOutput = dmnOutput; }
Example #29
Source File: DefaultDmnTransform.java From camunda-bpm-platform with Apache License 2.0 | 4 votes |
protected void notifyTransformListeners(Output output, DmnDecisionTableOutputImpl dmnOutput) { for (DmnTransformListener transformListener : transformListeners) { transformListener.transformDecisionTableOutput(output, dmnOutput); } }
Example #30
Source File: IndexedDmnColumns.java From camunda-dmn-xlsx with Apache License 2.0 | 4 votes |
public List<Output> getOrderedOutputs() { return orderedOutputs; }