Search in sources :

Example 1 with MultiInstanceLoopCharacteristics

use of org.camunda.bpm.model.bpmn.instance.MultiInstanceLoopCharacteristics in project camunda-bpmn-model by camunda.

the class MultiInstanceLoopCharacteristicsImpl method registerType.

public static void registerType(ModelBuilder modelBuilder) {
    ModelElementTypeBuilder typeBuilder = modelBuilder.defineType(MultiInstanceLoopCharacteristics.class, BPMN_ELEMENT_MULTI_INSTANCE_LOOP_CHARACTERISTICS).namespaceUri(BPMN20_NS).extendsType(LoopCharacteristics.class).instanceProvider(new ModelTypeInstanceProvider<MultiInstanceLoopCharacteristics>() {

        public MultiInstanceLoopCharacteristics newInstance(ModelTypeInstanceContext instanceContext) {
            return new MultiInstanceLoopCharacteristicsImpl(instanceContext);
        }
    });
    isSequentialAttribute = typeBuilder.booleanAttribute(BPMN_ELEMENT_IS_SEQUENTIAL).defaultValue(false).build();
    behaviorAttribute = typeBuilder.enumAttribute(BPMN_ELEMENT_BEHAVIOR, MultiInstanceFlowCondition.class).defaultValue(MultiInstanceFlowCondition.All).build();
    oneBehaviorEventRefAttribute = typeBuilder.stringAttribute(BPMN_ELEMENT_ONE_BEHAVIOR_EVENT_REF).qNameAttributeReference(EventDefinition.class).build();
    noneBehaviorEventRefAttribute = typeBuilder.stringAttribute(BPMN_ELEMENT_NONE_BEHAVIOR_EVENT_REF).qNameAttributeReference(EventDefinition.class).build();
    SequenceBuilder sequenceBuilder = typeBuilder.sequence();
    loopCardinalityChild = sequenceBuilder.element(LoopCardinality.class).build();
    loopDataInputRefChild = sequenceBuilder.element(LoopDataInputRef.class).qNameElementReference(DataInput.class).build();
    loopDataOutputRefChild = sequenceBuilder.element(LoopDataOutputRef.class).qNameElementReference(DataOutput.class).build();
    outputDataItemChild = sequenceBuilder.element(OutputDataItem.class).build();
    inputDataItemChild = sequenceBuilder.element(InputDataItem.class).build();
    complexBehaviorDefinitionCollection = sequenceBuilder.elementCollection(ComplexBehaviorDefinition.class).build();
    completionConditionChild = sequenceBuilder.element(CompletionCondition.class).build();
    camundaAsyncAfter = typeBuilder.booleanAttribute(CAMUNDA_ATTRIBUTE_ASYNC_AFTER).namespace(CAMUNDA_NS).defaultValue(false).build();
    camundaAsyncBefore = typeBuilder.booleanAttribute(CAMUNDA_ATTRIBUTE_ASYNC_BEFORE).namespace(CAMUNDA_NS).defaultValue(false).build();
    camundaExclusive = typeBuilder.booleanAttribute(CAMUNDA_ATTRIBUTE_EXCLUSIVE).namespace(CAMUNDA_NS).defaultValue(true).build();
    camundaCollection = typeBuilder.stringAttribute(CAMUNDA_ATTRIBUTE_COLLECTION).namespace(CAMUNDA_NS).build();
    camundaElementVariable = typeBuilder.stringAttribute(CAMUNDA_ATTRIBUTE_ELEMENT_VARIABLE).namespace(CAMUNDA_NS).build();
    typeBuilder.build();
}
Also used : MultiInstanceFlowCondition(org.camunda.bpm.model.bpmn.MultiInstanceFlowCondition) MultiInstanceLoopCharacteristics(org.camunda.bpm.model.bpmn.instance.MultiInstanceLoopCharacteristics) SequenceBuilder(org.camunda.bpm.model.xml.type.child.SequenceBuilder) ModelElementTypeBuilder(org.camunda.bpm.model.xml.type.ModelElementTypeBuilder) ModelTypeInstanceContext(org.camunda.bpm.model.xml.impl.instance.ModelTypeInstanceContext) LoopCharacteristics(org.camunda.bpm.model.bpmn.instance.LoopCharacteristics) MultiInstanceLoopCharacteristics(org.camunda.bpm.model.bpmn.instance.MultiInstanceLoopCharacteristics)

Aggregations

MultiInstanceFlowCondition (org.camunda.bpm.model.bpmn.MultiInstanceFlowCondition)1 LoopCharacteristics (org.camunda.bpm.model.bpmn.instance.LoopCharacteristics)1 MultiInstanceLoopCharacteristics (org.camunda.bpm.model.bpmn.instance.MultiInstanceLoopCharacteristics)1 ModelTypeInstanceContext (org.camunda.bpm.model.xml.impl.instance.ModelTypeInstanceContext)1 ModelElementTypeBuilder (org.camunda.bpm.model.xml.type.ModelElementTypeBuilder)1 SequenceBuilder (org.camunda.bpm.model.xml.type.child.SequenceBuilder)1