org.camunda.bpm.engine.impl.bpmn.parser
Class BpmnParse

java.lang.Object
  extended by org.xml.sax.helpers.DefaultHandler
      extended by org.camunda.bpm.engine.impl.util.xml.Parse
          extended by org.camunda.bpm.engine.impl.bpmn.parser.BpmnParse
All Implemented Interfaces:
ContentHandler, DTDHandler, EntityResolver, ErrorHandler

public class BpmnParse
extends Parse

Specific parsing of one BPMN 2.0 XML file, created by the BpmnParser.

Author:
Tom Baeyens, Bernd Ruecker, Joram Barrez, Christian Stettler, Frederik Heremans, Falko Menge, Esteban Robles, Daniel Meyer, Saeid Mirzaei, Nico Rehwaldt

Field Summary
protected static String ASSIGNEE_EXTENSION
           
protected static String ATTRIBUTEVALUE_T_FORMAL_EXPRESSION
           
protected static String CANDIDATE_GROUPS_EXTENSION
           
protected static String CANDIDATE_STARTER_GROUPS_EXTENSION
           
protected static String CANDIDATE_STARTER_USERS_EXTENSION
           
protected static String CANDIDATE_USERS_EXTENSION
           
protected  DeploymentEntity deployment
          The deployment to which the parsed process definitions will be added.
protected static String DUE_DATE_EXTENSION
           
protected  List<String> elementIds
          A list of all element IDs.
protected  Map<String,Error> errors
          Mapping of found errors in BPMN 2.0 file
protected  ExpressionManager expressionManager
           
protected static String FOLLOW_UP_DATE_EXTENSION
           
protected static String FORMAL_EXPRESSION
           
protected static String GROUP_PREFIX
           
protected static String HUMAN_PERFORMER
           
protected  Map<String,XMLImporter> importers
           
protected  Map<String,List<JobDeclaration<?>>> jobDeclarations
          Mapping from a process definition key to his containing list of job declarations
protected static Logger LOGGER
           
protected  Map<String,MessageDefinition> messages
          Mapping containing values stored during the first phase of parsing since other elements can reference these messages.
static String MULTI_INSTANCE_BODY_ID_SUFFIX
           
protected  List<BpmnParseListener> parseListeners
           
protected  Map<String,String> participantProcesses
          A map for storing the process references of participants
protected static String POTENTIAL_OWNER
           
protected static String POTENTIAL_STARTER
           
protected  Map<String,String> prefixs
           
protected static String PRIORITY_EXTENSION
           
protected  List<ProcessDefinitionEntity> processDefinitions
          The end result of the parsing: a list of process definition.
static String PROPERTYNAME_COMPENSATION_HANDLER_ID
           
static String PROPERTYNAME_CONDITION
           
static String PROPERTYNAME_CONDITION_TEXT
           
static String PROPERTYNAME_CONSUMES_COMPENSATION
           
static String PROPERTYNAME_DOCUMENTATION
           
static String PROPERTYNAME_ERROR_EVENT_DEFINITIONS
           
static String PROPERTYNAME_EVENT_SUBSCRIPTION_DECLARATION
           
static String PROPERTYNAME_INITIAL
           
static String PROPERTYNAME_INITIATOR_VARIABLE_NAME
           
static String PROPERTYNAME_IS_FOR_COMPENSATION
           
static String PROPERTYNAME_IS_MULTI_INSTANCE
           
static String PROPERTYNAME_ISEXPANDED
           
static String PROPERTYNAME_MESSAGE_JOB_DECLARATION
           
static String PROPERTYNAME_START_TIMER
           
static String PROPERTYNAME_THROWS_COMPENSATION
           
static String PROPERTYNAME_TIMER_DECLARATION
           
static String PROPERTYNAME_TRIGGERED_BY_EVENT
           
static String PROPERTYNAME_TYPE
           
static String PROPERTYNAME_VARIABLE_DECLARATIONS
           
protected static String RESOURCE_ASSIGNMENT_EXPR
           
protected  Map<String,TransitionImpl> sequenceFlows
          A map for storing sequence flow based on their id during parsing.
protected  Map<String,SignalDefinition> signals
           
protected  String targetNamespace
           
protected static String USER_PREFIX
           
 
Fields inherited from class org.camunda.bpm.engine.impl.util.xml.Parse
name, parser, rootElement, schemaResource, streamSource, warnings
 
Constructor Summary
BpmnParse(BpmnParser parser)
          Constructor to be called by the BpmnParser.
 
Method Summary
protected  void addErrorEventDefinition(ErrorEventDefinition errorEventDefinition, ScopeImpl catchingScope)
           
protected  void addEventSubscriptionDeclaration(EventSubscriptionDeclaration subscription, ScopeImpl scope, Element element)
           
protected  void addJobDeclarationToProcessDefinition(JobDeclaration<?> jobDeclaration, ProcessDefinitionImpl processDefinition)
           
protected  void addMessageJobDeclarationToActivity(MessageJobDeclaration messageJobDeclaration, ActivityImpl activity)
           
protected  void addTimeCycleWarning(Element timeCycleElement, String type)
           
protected  void addTimerDeclaration(ScopeImpl scope, TimerDeclarationImpl timerDeclaration)
           
protected  void addVariableDeclaration(ScopeImpl scope, VariableDeclaration variableDeclaration)
           
protected  boolean checkActivityInputOutputSupported(Element activityElement, ActivityImpl activity, IoMapping inputOutput)
           
protected  boolean checkActivityOutputParameterSupported(Element activityElement, ActivityImpl activity)
           
protected  void collectElementIds()
           
 ActivityImpl createActivityOnScope(Element activityElement, ScopeImpl scopeElement)
          Parses the generic information of an activity element (id, name, documentation, etc.), and creates a new ActivityImpl on the given scope element.
protected  ParameterValueProvider createParameterValueProvider(String value, ExpressionManager expressionManager)
           
 BpmnParse deployment(DeploymentEntity deployment)
           
protected  void ensureNoIoMappingDefined(Element element)
           
 BpmnParse execute()
           
protected  String getAssignmentId(String expression, String prefix)
           
static String getIdForMiBody(String id)
           
protected  XMLImporter getImporter(String importType, Element theImport)
           
 Map<String,List<JobDeclaration<?>>> getJobDeclarations()
           
 List<JobDeclaration<?>> getJobDeclarationsByKey(String processDefinitionKey)
           
protected  ActivityImpl getMultiInstanceScope(ActivityImpl activity)
           
 ProcessDefinitionEntity getProcessDefinition(String processDefinitionKey)
           
 List<ProcessDefinitionEntity> getProcessDefinitions()
           
protected  String getStringValueFromAttributeOrElement(String attributeName, String elementName, Element element)
           
protected  boolean isAsyncAfter(Element element)
           
protected  boolean isAsyncBefore(Element element)
           
protected  boolean isExclusive(Element element)
           
protected  boolean isValidEventNameForScope(String eventName, Element listenerElement)
          Check if the given event name is valid.
 BpmnParse name(String name)
           
 void parseActivities(Element parentElement, ScopeImpl scopeElement, HashMap<String,Element> postponedElements)
          Parses the activities of a certain level in the process (process, subprocess or another scope).
protected  void parseActivity(Element activityElement, Element parentElement, ScopeImpl scopeElement, HashMap<String,Element> postponedElements)
           
protected  void parseActivityInputOutput(Element activityElement, ActivityImpl activity)
           
protected  void parseAssociations(Element scopeElement, ScopeImpl parentScope)
           
protected  void parseAsynchronousContinuation(Element element, ActivityImpl activity)
           
protected  void parseBinding(Element callActivityElement, ActivityImpl activity, CallableElement callableElement, boolean isProcess)
           
 Boolean parseBooleanAttribute(String booleanText)
           
 Boolean parseBooleanAttribute(String booleanText, boolean defaultValue)
           
protected  ActivityBehavior parseBoundaryCancelEventDefinition(Element cancelEventDefinition, ActivityImpl activity)
           
 void parseBoundaryErrorEventDefinition(Element errorEventDefinition, ActivityImpl boundaryEventActivity)
           
 void parseBoundaryEvents(Element parentElement, ScopeImpl flowScope)
          Parses the boundary events of a certain 'level' (process, subprocess or other scope).
 void parseBoundaryMessageEventDefinition(Element element, boolean interrupting, ActivityImpl messageActivity)
           
 void parseBoundarySignalEventDefinition(Element element, boolean interrupting, ActivityImpl signalActivity)
           
 void parseBoundaryTimerEventDefinition(Element timerEventDefinition, boolean interrupting, ActivityImpl boundaryActivity)
          Parses a boundary timer event.
 void parseBPMNDiagram(Element bpmndiagramElement)
           
 void parseBPMNEdge(Element bpmnEdgeElement)
           
 void parseBPMNPlane(Element bpmnPlaneElement)
           
 void parseBPMNShape(Element bpmnShapeElement)
           
 ActivityImpl parseBusinessRuleTask(Element businessRuleTaskElement, ScopeImpl scope)
          Parses a businessRuleTask declaration.
 ActivityImpl parseCallActivity(Element callActivityElement, ScopeImpl scope, boolean isMultiInstance)
          Parses a call activity (currently only supporting calling subprocesses).
protected  void parseCatchCompensateEventDefinition(Element compensateEventDefinition, ActivityImpl activity)
           
 void parseCollaboration()
          Parses the collaboration definition defined within the 'definitions' root element and get all participants to lookup their process references during DI parsing.
protected  List<String> parseCommaSeparatedList(String s)
          Parses the given String as a list of comma separated entries, where an entry can possibly be an expression that has comma's.
protected  CompensateEventDefinition parseCompensateEventDefinition(Element compensateEventDefinitionElement, ScopeImpl scopeElement)
           
protected  void parseDefinitionsAttributes()
           
 void parseDiagramInterchangeElements()
           
protected  void parseDIBounds(Element bpmnShapeElement, HasDIBounds target)
           
 String parseDocumentation(Element element)
           
static String parseDocumentation(List<String> docStrings)
           
 Double parseDoubleAttribute(Element element, String attributename, String doubleText, boolean required)
           
protected  void parseEmailServiceTask(ActivityImpl activity, Element serviceTaskElement, List<FieldDeclaration> fieldDeclarations)
           
 void parseEndEvents(Element parentElement, ScopeImpl scope)
          Parses the end events of a certain level in the process (process, subprocess or another scope).
 void parseErrors()
           
protected  void parseErrorStartEventDefinition(Element errorEventDefinition, ActivityImpl startEventActivity)
           
 ActivityImpl parseEventBasedGateway(Element eventBasedGwElement, Element parentElement, ScopeImpl scope)
           
protected  void parseEventDefinitionForSubprocess(EventSubscriptionDeclaration subscriptionDeclaration, ActivityImpl activity, Element element)
           
 ActivityImpl parseExclusiveGateway(Element exclusiveGwElement, ScopeImpl scope)
          Parses an exclusive gateway declaration.
 ExecutionListener parseExecutionListener(Element executionListenerElement)
          Parses an ExecutionListener implementation for the given executionListener element.
 void parseExecutionListenersOnScope(Element scopeElement, ScopeImpl scope)
          Parses all execution-listeners on a scope.
 void parseExecutionListenersOnTransition(Element activitiElement, TransitionImpl activity)
           
protected  Expression parseExpression(Element parent, String name)
           
protected  FieldDeclaration parseExpressionFieldDeclaration(Element fieldDeclarationElement, Element serviceTaskElement, String fieldName)
           
protected  FieldDeclaration parseFieldDeclaration(Element serviceTaskElement, Element fieldDeclarationElement)
           
 List<FieldDeclaration> parseFieldDeclarations(Element element)
           
protected  void parseHumanPerformer(Element taskElement, TaskDefinition taskDefinition)
           
protected  void parseHumanPerformerResourceAssignment(Element performerElement, TaskDefinition taskDefinition)
           
protected  void parseImports()
          Parses the rootElement importing structures
 ActivityImpl parseInclusiveGateway(Element inclusiveGwElement, ScopeImpl scope)
          Parses an inclusive gateway declaration.
protected  void parseInputParameter(Element callActivityElement, ActivityImpl activity, CallableElement callableElement, boolean isProcess)
           
 ActivityImpl parseIntermediateCatchEvent(Element intermediateEventElement, ScopeImpl scopeElement, ActivityImpl eventBasedGateway)
           
protected  void parseIntermediateLinkEventCatchBehavior(Element intermediateEventElement, ActivityImpl activity, Element linkEventDefinitionElement)
           
protected  void parseIntermediateMessageEventDefinition(Element messageEventDefinition, ActivityImpl nestedActivity)
           
protected  void parseIntermediateSignalEventDefinition(Element element, ActivityImpl signalActivity)
           
 ActivityImpl parseIntermediateThrowEvent(Element intermediateEventElement, ScopeImpl scopeElement)
           
protected  void parseIntermediateTimerEventDefinition(Element timerEventDefinition, ActivityImpl timerActivity)
           
protected  void parseLanes(Element laneSetElement, LaneSet laneSet)
           
protected  void parseLaneSets(Element parentElement, ProcessDefinitionEntity processDefinition)
           
 ActivityImpl parseManualTask(Element manualTaskElement, ScopeImpl scope)
          Parses a manual task.
protected  EventSubscriptionDeclaration parseMessageEventDefinition(Element messageEventDefinition)
           
 void parseMessages()
          Parses the messages of the given definitions file.
 ScopeImpl parseMultiInstanceLoopCharacteristics(Element activityElement, ScopeImpl scope)
          Parses loopCharacteristics (standardLoop/Multi-instance) of an activity, if any is defined.
protected  void parseOutputParameter(Element callActivityElement, ActivityImpl activity, CallableElement callableElement, boolean isProcess)
           
 ActivityImpl parseParallelGateway(Element parallelGwElement, ScopeImpl scope)
          Parses a parallel gateway declaration.
protected  void parsePostponedElements(Element scopeElement, ScopeImpl parentScope, HashMap<String,Element> postponedElements)
           
protected  void parsePotentialOwner(Element taskElement, TaskDefinition taskDefinition)
           
protected  void parsePotentialOwnerResourceAssignment(Element performerElement, TaskDefinition taskDefinition)
           
protected  void parsePotentialStarterResourceAssignment(Element performerElement, ProcessDefinitionEntity processDefinition)
           
 ProcessDefinitionEntity parseProcess(Element processElement)
          Parses one process (ie anything inside a <process> element).
protected  void parseProcessDefinitionCustomExtensions(Element scopeElement, ProcessDefinition definition)
           
 void parseProcessDefinitions()
          Parses all the process definitions defined within the 'definitions' root element.
protected  void parseProcessDefinitionStartEvent(ActivityImpl startEventActivity, Element startEventElement, Element parentElement, ScopeImpl scope)
           
 void parseProperties(Element element, ActivityImpl activity)
          Parses the properties of an element (if any) that can contain properties (processes, activities, etc.) Returns true if property subelemens are found.
 void parseProperty(Element propertyElement, ActivityImpl activity)
          Parses one property definition.
 void parsePropertyCustomExtensions(ActivityImpl activity, Element propertyElement, String propertyName, String propertyType)
          Parses the custom extensions for properties.
 ActivityImpl parseReceiveTask(Element receiveTaskElement, ScopeImpl scope)
          Parses a receive task.
protected  void parseRootElement()
          Parses the 'definitions' root element
 void parseScope(Element scopeElement, ScopeImpl parentScope)
          Parses a scope: a process, subprocess, etc.
protected  void parseScopeStartEvent(ActivityImpl startEventActivity, Element startEventElement, Element parentElement, ActivityImpl scopeActivity)
           
 ActivityImpl parseScriptTask(Element scriptTaskElement, ScopeImpl scope)
          Parses a scriptTask declaration.
protected  ScriptTaskActivityBehavior parseScriptTaskElement(Element scriptTaskElement)
          Returns a ScriptTaskActivityBehavior for the script task element corresponding to the script source or resource specified.
 ActivityImpl parseSendTask(Element sendTaskElement, ScopeImpl scope)
          Parses a sendTask declaration.
 void parseSequenceFlow(Element processElement, ScopeImpl scope)
          Parses all sequence flow of a scope.
 void parseSequenceFlowConditionExpression(Element seqFlowElement, TransitionImpl seqFlow)
          Parses a condition expression on a sequence flow.
 ActivityImpl parseServiceTask(Element serviceTaskElement, ScopeImpl scope)
          Parses a serviceTask declaration.
 ActivityImpl parseServiceTaskLike(String elementName, Element serviceTaskElement, ScopeImpl scope)
           
protected  void parseShellServiceTask(ActivityImpl activity, Element serviceTaskElement, List<FieldDeclaration> fieldDeclarations)
           
protected  EventSubscriptionDeclaration parseSignalEventDefinition(Element signalEventDefinitionElement)
           
protected  void parseSignals()
          Parses the signals of the given definitions file.
protected  void parseStartAuthorization(Element scopeElement, ProcessDefinition definition)
           
 void parseStartEvents(Element parentElement, ScopeImpl scope)
          Parses the start events of a certain level in the process (process, subprocess or another scope).
protected  void parseStartFormHandlers(List<Element> startEventElements, ProcessDefinitionEntity processDefinition)
           
protected  FieldDeclaration parseStringFieldDeclaration(Element fieldDeclarationElement, Element serviceTaskElement, String fieldName)
           
 ActivityImpl parseSubProcess(Element subProcessElement, ScopeImpl scope)
          Parses a subprocess (formally known as an embedded subprocess): a subprocess defined within another process definition.
 ActivityImpl parseTask(Element taskElement, ScopeImpl scope)
          Parses a task with no specific type (behaves as passthrough).
 TaskDefinition parseTaskDefinition(Element taskElement, String taskDefinitionKey, ProcessDefinitionEntity processDefinition)
           
protected  TaskListener parseTaskListener(Element taskListenerElement)
           
protected  void parseTaskListeners(Element userTaskElement, TaskDefinition taskDefinition)
           
protected  TimerDeclarationImpl parseTimer(Element timerEventDefinition, ScopeImpl timerActivity, String jobHandlerType)
           
protected  void parseTimerStartEventDefinition(Element timerEventDefinition, ActivityImpl timerActivity, ProcessDefinitionEntity processDefinition)
           
protected  void parseTimerStartEventDefinitionForEventSubprocess(Element timerEventDefinition, ActivityImpl timerActivity, boolean interrupting)
           
protected  ActivityImpl parseTransaction(Element transactionElement, ScopeImpl scope)
           
 ActivityImpl parseUserTask(Element userTaskElement, ScopeImpl scope)
          Parses a userTask declaration.
protected  void parseUserTaskCustomExtensions(Element taskElement, TaskDefinition taskDefinition)
           
protected  void parseVersion(Element callActivityElement, ActivityImpl activity, CallableElement callableElement, boolean isProcess)
           
protected  String resolveName(String name)
           
protected  void selectInitial(List<ActivityImpl> startEventActivities, ProcessDefinitionEntity processDefinition, Element parentElement)
           
protected  void setErrorCodeVariableOnErrorEventDefinition(Element errorEventDefinition, ErrorEventDefinition definition)
          Sets the value for "camunda:errorCodeVariable" on the passed definition if it's present.
 BpmnParse sourceInputStream(InputStream inputStream)
           
 BpmnParse sourceResource(String resource)
           
 BpmnParse sourceResource(String resource, ClassLoader classLoader)
           
 BpmnParse sourceString(String string)
           
 BpmnParse sourceUrl(String url)
           
 BpmnParse sourceUrl(URL url)
           
 void validateActivities(List<ActivityImpl> activities)
           
protected  void validateActivity(ActivityImpl activity)
           
 void validateExclusiveGateway(ActivityImpl activity)
           
protected  void validateFieldDeclarationsForEmail(Element serviceTaskElement, List<FieldDeclaration> fieldDeclarations)
           
protected  void validateFieldDeclarationsForShell(Element serviceTaskElement, List<FieldDeclaration> fieldDeclarations)
           
protected  void validateOutgoingFlows(ActivityImpl activity)
           
 
Methods inherited from class org.camunda.bpm.engine.impl.util.xml.Parse
addError, addError, addError, addWarning, addWarning, getProblems, getRootElement, hasErrors, hasWarnings, logWarnings, setSchemaResource, setStreamSource, throwExceptionForErrors
 
Methods inherited from class org.xml.sax.helpers.DefaultHandler
characters, endDocument, endElement, endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setDocumentLocator, skippedEntity, startDocument, startElement, startPrefixMapping, unparsedEntityDecl, warning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MULTI_INSTANCE_BODY_ID_SUFFIX

public static final String MULTI_INSTANCE_BODY_ID_SUFFIX
See Also:
Constant Field Values

LOGGER

protected static final Logger LOGGER

PROPERTYNAME_DOCUMENTATION

public static final String PROPERTYNAME_DOCUMENTATION
See Also:
Constant Field Values

PROPERTYNAME_INITIAL

public static final String PROPERTYNAME_INITIAL
See Also:
Constant Field Values

PROPERTYNAME_INITIATOR_VARIABLE_NAME

public static final String PROPERTYNAME_INITIATOR_VARIABLE_NAME
See Also:
Constant Field Values

PROPERTYNAME_CONDITION

public static final String PROPERTYNAME_CONDITION
See Also:
Constant Field Values

PROPERTYNAME_CONDITION_TEXT

public static final String PROPERTYNAME_CONDITION_TEXT
See Also:
Constant Field Values

PROPERTYNAME_VARIABLE_DECLARATIONS

public static final String PROPERTYNAME_VARIABLE_DECLARATIONS
See Also:
Constant Field Values

PROPERTYNAME_TIMER_DECLARATION

public static final String PROPERTYNAME_TIMER_DECLARATION
See Also:
Constant Field Values

PROPERTYNAME_MESSAGE_JOB_DECLARATION

public static final String PROPERTYNAME_MESSAGE_JOB_DECLARATION
See Also:
Constant Field Values

PROPERTYNAME_ISEXPANDED

public static final String PROPERTYNAME_ISEXPANDED
See Also:
Constant Field Values

PROPERTYNAME_START_TIMER

public static final String PROPERTYNAME_START_TIMER
See Also:
Constant Field Values

PROPERTYNAME_COMPENSATION_HANDLER_ID

public static final String PROPERTYNAME_COMPENSATION_HANDLER_ID
See Also:
Constant Field Values

PROPERTYNAME_IS_FOR_COMPENSATION

public static final String PROPERTYNAME_IS_FOR_COMPENSATION
See Also:
Constant Field Values

PROPERTYNAME_ERROR_EVENT_DEFINITIONS

public static final String PROPERTYNAME_ERROR_EVENT_DEFINITIONS
See Also:
Constant Field Values

PROPERTYNAME_EVENT_SUBSCRIPTION_DECLARATION

public static final String PROPERTYNAME_EVENT_SUBSCRIPTION_DECLARATION
See Also:
Constant Field Values

PROPERTYNAME_TRIGGERED_BY_EVENT

public static final String PROPERTYNAME_TRIGGERED_BY_EVENT
See Also:
Constant Field Values

PROPERTYNAME_TYPE

public static final String PROPERTYNAME_TYPE
See Also:
Constant Field Values

PROPERTYNAME_THROWS_COMPENSATION

public static final String PROPERTYNAME_THROWS_COMPENSATION
See Also:
Constant Field Values

PROPERTYNAME_CONSUMES_COMPENSATION

public static final String PROPERTYNAME_CONSUMES_COMPENSATION
See Also:
Constant Field Values

POTENTIAL_STARTER

protected static final String POTENTIAL_STARTER
See Also:
Constant Field Values

CANDIDATE_STARTER_USERS_EXTENSION

protected static final String CANDIDATE_STARTER_USERS_EXTENSION
See Also:
Constant Field Values

CANDIDATE_STARTER_GROUPS_EXTENSION

protected static final String CANDIDATE_STARTER_GROUPS_EXTENSION
See Also:
Constant Field Values

ATTRIBUTEVALUE_T_FORMAL_EXPRESSION

protected static final String ATTRIBUTEVALUE_T_FORMAL_EXPRESSION
See Also:
Constant Field Values

PROPERTYNAME_IS_MULTI_INSTANCE

public static final String PROPERTYNAME_IS_MULTI_INSTANCE
See Also:
Constant Field Values

deployment

protected DeploymentEntity deployment
The deployment to which the parsed process definitions will be added.


processDefinitions

protected List<ProcessDefinitionEntity> processDefinitions
The end result of the parsing: a list of process definition.


errors

protected Map<String,Error> errors
Mapping of found errors in BPMN 2.0 file


jobDeclarations

protected Map<String,List<JobDeclaration<?>>> jobDeclarations
Mapping from a process definition key to his containing list of job declarations


sequenceFlows

protected Map<String,TransitionImpl> sequenceFlows
A map for storing sequence flow based on their id during parsing.


elementIds

protected List<String> elementIds
A list of all element IDs. This allows us to parse only what we actually support but still validate the references among elements we do not support.


participantProcesses

protected Map<String,String> participantProcesses
A map for storing the process references of participants


messages

protected Map<String,MessageDefinition> messages
Mapping containing values stored during the first phase of parsing since other elements can reference these messages. All the map's elements are defined outside the process definition(s), which means that this map doesn't need to be re-initialized for each new process definition.


signals

protected Map<String,SignalDefinition> signals

expressionManager

protected ExpressionManager expressionManager

parseListeners

protected List<BpmnParseListener> parseListeners

importers

protected Map<String,XMLImporter> importers

prefixs

protected Map<String,String> prefixs

targetNamespace

protected String targetNamespace

HUMAN_PERFORMER

protected static final String HUMAN_PERFORMER
See Also:
Constant Field Values

POTENTIAL_OWNER

protected static final String POTENTIAL_OWNER
See Also:
Constant Field Values

RESOURCE_ASSIGNMENT_EXPR

protected static final String RESOURCE_ASSIGNMENT_EXPR
See Also:
Constant Field Values

FORMAL_EXPRESSION

protected static final String FORMAL_EXPRESSION
See Also:
Constant Field Values

USER_PREFIX

protected static final String USER_PREFIX
See Also:
Constant Field Values

GROUP_PREFIX

protected static final String GROUP_PREFIX
See Also:
Constant Field Values

ASSIGNEE_EXTENSION

protected static final String ASSIGNEE_EXTENSION
See Also:
Constant Field Values

CANDIDATE_USERS_EXTENSION

protected static final String CANDIDATE_USERS_EXTENSION
See Also:
Constant Field Values

CANDIDATE_GROUPS_EXTENSION

protected static final String CANDIDATE_GROUPS_EXTENSION
See Also:
Constant Field Values

DUE_DATE_EXTENSION

protected static final String DUE_DATE_EXTENSION
See Also:
Constant Field Values

FOLLOW_UP_DATE_EXTENSION

protected static final String FOLLOW_UP_DATE_EXTENSION
See Also:
Constant Field Values

PRIORITY_EXTENSION

protected static final String PRIORITY_EXTENSION
See Also:
Constant Field Values
Constructor Detail

BpmnParse

public BpmnParse(BpmnParser parser)
Constructor to be called by the BpmnParser.

Method Detail

deployment

public BpmnParse deployment(DeploymentEntity deployment)

execute

public BpmnParse execute()
Overrides:
execute in class Parse

parseRootElement

protected void parseRootElement()
Parses the 'definitions' root element


collectElementIds

protected void collectElementIds()

parseDefinitionsAttributes

protected void parseDefinitionsAttributes()

resolveName

protected String resolveName(String name)

parseImports

protected void parseImports()
Parses the rootElement importing structures


getImporter

protected XMLImporter getImporter(String importType,
                                  Element theImport)

parseMessages

public void parseMessages()
Parses the messages of the given definitions file. Messages are not contained within a process element, but they can be referenced from inner process elements.


parseSignals

protected void parseSignals()
Parses the signals of the given definitions file. Signals are not contained within a process element, but they can be referenced from inner process elements.


parseErrors

public void parseErrors()

parseProcessDefinitions

public void parseProcessDefinitions()
Parses all the process definitions defined within the 'definitions' root element.


parseCollaboration

public void parseCollaboration()
Parses the collaboration definition defined within the 'definitions' root element and get all participants to lookup their process references during DI parsing.


parseProcess

public ProcessDefinitionEntity parseProcess(Element processElement)
Parses one process (ie anything inside a <process> element).

Parameters:
processElement - The 'process' element.
Returns:
The parsed version of the XML: a ProcessDefinitionImpl object.

parseLaneSets

protected void parseLaneSets(Element parentElement,
                             ProcessDefinitionEntity processDefinition)

parseLanes

protected void parseLanes(Element laneSetElement,
                          LaneSet laneSet)

parseScope

public void parseScope(Element scopeElement,
                       ScopeImpl parentScope)
Parses a scope: a process, subprocess, etc. Note that a process definition is a scope on itself.

Parameters:
scopeElement - The XML element defining the scope
parentScope - The scope that contains the nested scope.

parsePostponedElements

protected void parsePostponedElements(Element scopeElement,
                                      ScopeImpl parentScope,
                                      HashMap<String,Element> postponedElements)

parseProcessDefinitionCustomExtensions

protected void parseProcessDefinitionCustomExtensions(Element scopeElement,
                                                      ProcessDefinition definition)

parseStartAuthorization

protected void parseStartAuthorization(Element scopeElement,
                                       ProcessDefinition definition)

parsePotentialStarterResourceAssignment

protected void parsePotentialStarterResourceAssignment(Element performerElement,
                                                       ProcessDefinitionEntity processDefinition)

parseAssociations

protected void parseAssociations(Element scopeElement,
                                 ScopeImpl parentScope)

parseStartEvents

public void parseStartEvents(Element parentElement,
                             ScopeImpl scope)
Parses the start events of a certain level in the process (process, subprocess or another scope).

Parameters:
parentElement - The 'parent' element that contains the start events (process, subprocess).
scope - The ScopeImpl to which the start events must be added.

selectInitial

protected void selectInitial(List<ActivityImpl> startEventActivities,
                             ProcessDefinitionEntity processDefinition,
                             Element parentElement)

parseProcessDefinitionStartEvent

protected void parseProcessDefinitionStartEvent(ActivityImpl startEventActivity,
                                                Element startEventElement,
                                                Element parentElement,
                                                ScopeImpl scope)

parseStartFormHandlers

protected void parseStartFormHandlers(List<Element> startEventElements,
                                      ProcessDefinitionEntity processDefinition)

parseScopeStartEvent

protected void parseScopeStartEvent(ActivityImpl startEventActivity,
                                    Element startEventElement,
                                    Element parentElement,
                                    ActivityImpl scopeActivity)

parseErrorStartEventDefinition

protected void parseErrorStartEventDefinition(Element errorEventDefinition,
                                              ActivityImpl startEventActivity)

setErrorCodeVariableOnErrorEventDefinition

protected void setErrorCodeVariableOnErrorEventDefinition(Element errorEventDefinition,
                                                          ErrorEventDefinition definition)
Sets the value for "camunda:errorCodeVariable" on the passed definition if it's present.

Parameters:
errorEventDefinition - the XML errorEventDefinition tag
definition - the errorEventDefintion that can get the errorCodeVariable value

parseMessageEventDefinition

protected EventSubscriptionDeclaration parseMessageEventDefinition(Element messageEventDefinition)

addEventSubscriptionDeclaration

protected void addEventSubscriptionDeclaration(EventSubscriptionDeclaration subscription,
                                               ScopeImpl scope,
                                               Element element)

parseActivities

public void parseActivities(Element parentElement,
                            ScopeImpl scopeElement,
                            HashMap<String,Element> postponedElements)
Parses the activities of a certain level in the process (process, subprocess or another scope).

Parameters:
parentElement - The 'parent' element that contains the activities (process, subprocess).
scopeElement - The ScopeImpl to which the activities must be added.
postponedElements -

parseActivity

protected void parseActivity(Element activityElement,
                             Element parentElement,
                             ScopeImpl scopeElement,
                             HashMap<String,Element> postponedElements)

validateActivities

public void validateActivities(List<ActivityImpl> activities)

validateActivity

protected void validateActivity(ActivityImpl activity)

validateOutgoingFlows

protected void validateOutgoingFlows(ActivityImpl activity)

validateExclusiveGateway

public void validateExclusiveGateway(ActivityImpl activity)

parseIntermediateCatchEvent

public ActivityImpl parseIntermediateCatchEvent(Element intermediateEventElement,
                                                ScopeImpl scopeElement,
                                                ActivityImpl eventBasedGateway)

parseIntermediateLinkEventCatchBehavior

protected void parseIntermediateLinkEventCatchBehavior(Element intermediateEventElement,
                                                       ActivityImpl activity,
                                                       Element linkEventDefinitionElement)

parseIntermediateMessageEventDefinition

protected void parseIntermediateMessageEventDefinition(Element messageEventDefinition,
                                                       ActivityImpl nestedActivity)

parseIntermediateThrowEvent

public ActivityImpl parseIntermediateThrowEvent(Element intermediateEventElement,
                                                ScopeImpl scopeElement)

parseCompensateEventDefinition

protected CompensateEventDefinition parseCompensateEventDefinition(Element compensateEventDefinitionElement,
                                                                   ScopeImpl scopeElement)

parseCatchCompensateEventDefinition

protected void parseCatchCompensateEventDefinition(Element compensateEventDefinition,
                                                   ActivityImpl activity)

parseBoundaryCancelEventDefinition

protected ActivityBehavior parseBoundaryCancelEventDefinition(Element cancelEventDefinition,
                                                              ActivityImpl activity)

parseMultiInstanceLoopCharacteristics

public ScopeImpl parseMultiInstanceLoopCharacteristics(Element activityElement,
                                                       ScopeImpl scope)
Parses loopCharacteristics (standardLoop/Multi-instance) of an activity, if any is defined.


getIdForMiBody

public static String getIdForMiBody(String id)

createActivityOnScope

public ActivityImpl createActivityOnScope(Element activityElement,
                                          ScopeImpl scopeElement)
Parses the generic information of an activity element (id, name, documentation, etc.), and creates a new ActivityImpl on the given scope element.


parseDocumentation

public String parseDocumentation(Element element)

parseDocumentation

public static String parseDocumentation(List<String> docStrings)

parseExclusiveGateway

public ActivityImpl parseExclusiveGateway(Element exclusiveGwElement,
                                          ScopeImpl scope)
Parses an exclusive gateway declaration.


parseInclusiveGateway

public ActivityImpl parseInclusiveGateway(Element inclusiveGwElement,
                                          ScopeImpl scope)
Parses an inclusive gateway declaration.


parseEventBasedGateway

public ActivityImpl parseEventBasedGateway(Element eventBasedGwElement,
                                           Element parentElement,
                                           ScopeImpl scope)

parseParallelGateway

public ActivityImpl parseParallelGateway(Element parallelGwElement,
                                         ScopeImpl scope)
Parses a parallel gateway declaration.


parseScriptTask

public ActivityImpl parseScriptTask(Element scriptTaskElement,
                                    ScopeImpl scope)
Parses a scriptTask declaration.


parseScriptTaskElement

protected ScriptTaskActivityBehavior parseScriptTaskElement(Element scriptTaskElement)
Returns a ScriptTaskActivityBehavior for the script task element corresponding to the script source or resource specified.

Parameters:
scriptTaskElement - the script task element
Returns:
the corresponding ScriptTaskActivityBehavior

parseServiceTask

public ActivityImpl parseServiceTask(Element serviceTaskElement,
                                     ScopeImpl scope)
Parses a serviceTask declaration.


parseServiceTaskLike

public ActivityImpl parseServiceTaskLike(String elementName,
                                         Element serviceTaskElement,
                                         ScopeImpl scope)

parseBusinessRuleTask

public ActivityImpl parseBusinessRuleTask(Element businessRuleTaskElement,
                                          ScopeImpl scope)
Parses a businessRuleTask declaration.


parseAsynchronousContinuation

protected void parseAsynchronousContinuation(Element element,
                                             ActivityImpl activity)

addMessageJobDeclarationToActivity

protected void addMessageJobDeclarationToActivity(MessageJobDeclaration messageJobDeclaration,
                                                  ActivityImpl activity)

addJobDeclarationToProcessDefinition

protected void addJobDeclarationToProcessDefinition(JobDeclaration<?> jobDeclaration,
                                                    ProcessDefinitionImpl processDefinition)

parseSendTask

public ActivityImpl parseSendTask(Element sendTaskElement,
                                  ScopeImpl scope)
Parses a sendTask declaration.


parseEmailServiceTask

protected void parseEmailServiceTask(ActivityImpl activity,
                                     Element serviceTaskElement,
                                     List<FieldDeclaration> fieldDeclarations)

parseShellServiceTask

protected void parseShellServiceTask(ActivityImpl activity,
                                     Element serviceTaskElement,
                                     List<FieldDeclaration> fieldDeclarations)

validateFieldDeclarationsForEmail

protected void validateFieldDeclarationsForEmail(Element serviceTaskElement,
                                                 List<FieldDeclaration> fieldDeclarations)

validateFieldDeclarationsForShell

protected void validateFieldDeclarationsForShell(Element serviceTaskElement,
                                                 List<FieldDeclaration> fieldDeclarations)

parseFieldDeclarations

public List<FieldDeclaration> parseFieldDeclarations(Element element)

parseFieldDeclaration

protected FieldDeclaration parseFieldDeclaration(Element serviceTaskElement,
                                                 Element fieldDeclarationElement)

parseStringFieldDeclaration

protected FieldDeclaration parseStringFieldDeclaration(Element fieldDeclarationElement,
                                                       Element serviceTaskElement,
                                                       String fieldName)

parseExpressionFieldDeclaration

protected FieldDeclaration parseExpressionFieldDeclaration(Element fieldDeclarationElement,
                                                           Element serviceTaskElement,
                                                           String fieldName)

getStringValueFromAttributeOrElement

protected String getStringValueFromAttributeOrElement(String attributeName,
                                                      String elementName,
                                                      Element element)

parseTask

public ActivityImpl parseTask(Element taskElement,
                              ScopeImpl scope)
Parses a task with no specific type (behaves as passthrough).


parseManualTask

public ActivityImpl parseManualTask(Element manualTaskElement,
                                    ScopeImpl scope)
Parses a manual task.


parseReceiveTask

public ActivityImpl parseReceiveTask(Element receiveTaskElement,
                                     ScopeImpl scope)
Parses a receive task.


parseUserTask

public ActivityImpl parseUserTask(Element userTaskElement,
                                  ScopeImpl scope)
Parses a userTask declaration.


parseTaskDefinition

public TaskDefinition parseTaskDefinition(Element taskElement,
                                          String taskDefinitionKey,
                                          ProcessDefinitionEntity processDefinition)

parseHumanPerformer

protected void parseHumanPerformer(Element taskElement,
                                   TaskDefinition taskDefinition)

parsePotentialOwner

protected void parsePotentialOwner(Element taskElement,
                                   TaskDefinition taskDefinition)

parseHumanPerformerResourceAssignment

protected void parseHumanPerformerResourceAssignment(Element performerElement,
                                                     TaskDefinition taskDefinition)

parsePotentialOwnerResourceAssignment

protected void parsePotentialOwnerResourceAssignment(Element performerElement,
                                                     TaskDefinition taskDefinition)

getAssignmentId

protected String getAssignmentId(String expression,
                                 String prefix)

parseUserTaskCustomExtensions

protected void parseUserTaskCustomExtensions(Element taskElement,
                                             TaskDefinition taskDefinition)

parseCommaSeparatedList

protected List<String> parseCommaSeparatedList(String s)
Parses the given String as a list of comma separated entries, where an entry can possibly be an expression that has comma's. If somebody is smart enough to write a regex for this, please let us know.

Returns:
the entries of the comma separated list, trimmed.

parseTaskListeners

protected void parseTaskListeners(Element userTaskElement,
                                  TaskDefinition taskDefinition)

parseTaskListener

protected TaskListener parseTaskListener(Element taskListenerElement)

parseEndEvents

public void parseEndEvents(Element parentElement,
                           ScopeImpl scope)
Parses the end events of a certain level in the process (process, subprocess or another scope).

Parameters:
parentElement - The 'parent' element that contains the end events (process, subprocess).
scope - The ScopeImpl to which the end events must be added.

parseBoundaryEvents

public void parseBoundaryEvents(Element parentElement,
                                ScopeImpl flowScope)
Parses the boundary events of a certain 'level' (process, subprocess or other scope). Note that the boundary events are not parsed during the parsing of the bpmn activities, since the semantics are different (boundaryEvent needs to be added as nested activity to the reference activity on PVM level).

Parameters:
parentElement - The 'parent' element that contains the activities (process, subprocess).
flowScope - The ScopeImpl to which the activities must be added.

getMultiInstanceScope

protected ActivityImpl getMultiInstanceScope(ActivityImpl activity)

parseBoundaryTimerEventDefinition

public void parseBoundaryTimerEventDefinition(Element timerEventDefinition,
                                              boolean interrupting,
                                              ActivityImpl boundaryActivity)
Parses a boundary timer event. The end-result will be that the given nested activity will get the appropriate ActivityBehavior.

Parameters:
timerEventDefinition - The XML element corresponding with the timer event details
interrupting - Indicates whether this timer is interrupting.
boundaryActivity - The activity which maps to the structure of the timer event on the boundary of another activity. Note that this is NOT the activity onto which the boundary event is attached, but a nested activity inside this activity, specifically created for this event.

parseBoundarySignalEventDefinition

public void parseBoundarySignalEventDefinition(Element element,
                                               boolean interrupting,
                                               ActivityImpl signalActivity)

parseBoundaryMessageEventDefinition

public void parseBoundaryMessageEventDefinition(Element element,
                                                boolean interrupting,
                                                ActivityImpl messageActivity)

parseTimerStartEventDefinition

protected void parseTimerStartEventDefinition(Element timerEventDefinition,
                                              ActivityImpl timerActivity,
                                              ProcessDefinitionEntity processDefinition)

parseTimerStartEventDefinitionForEventSubprocess

protected void parseTimerStartEventDefinitionForEventSubprocess(Element timerEventDefinition,
                                                                ActivityImpl timerActivity,
                                                                boolean interrupting)

parseEventDefinitionForSubprocess

protected void parseEventDefinitionForSubprocess(EventSubscriptionDeclaration subscriptionDeclaration,
                                                 ActivityImpl activity,
                                                 Element element)

parseIntermediateSignalEventDefinition

protected void parseIntermediateSignalEventDefinition(Element element,
                                                      ActivityImpl signalActivity)

parseSignalEventDefinition

protected EventSubscriptionDeclaration parseSignalEventDefinition(Element signalEventDefinitionElement)

parseIntermediateTimerEventDefinition

protected void parseIntermediateTimerEventDefinition(Element timerEventDefinition,
                                                     ActivityImpl timerActivity)

parseTimer

protected TimerDeclarationImpl parseTimer(Element timerEventDefinition,
                                          ScopeImpl timerActivity,
                                          String jobHandlerType)

parseExpression

protected Expression parseExpression(Element parent,
                                     String name)

parseBoundaryErrorEventDefinition

public void parseBoundaryErrorEventDefinition(Element errorEventDefinition,
                                              ActivityImpl boundaryEventActivity)

addErrorEventDefinition

protected void addErrorEventDefinition(ErrorEventDefinition errorEventDefinition,
                                       ScopeImpl catchingScope)

addTimerDeclaration

protected void addTimerDeclaration(ScopeImpl scope,
                                   TimerDeclarationImpl timerDeclaration)

addVariableDeclaration

protected void addVariableDeclaration(ScopeImpl scope,
                                      VariableDeclaration variableDeclaration)

parseSubProcess

public ActivityImpl parseSubProcess(Element subProcessElement,
                                    ScopeImpl scope)
Parses a subprocess (formally known as an embedded subprocess): a subprocess defined within another process definition.

Parameters:
subProcessElement - The XML element corresponding with the subprocess definition
scope - The current scope on which the subprocess is defined.

parseTransaction

protected ActivityImpl parseTransaction(Element transactionElement,
                                        ScopeImpl scope)

parseCallActivity

public ActivityImpl parseCallActivity(Element callActivityElement,
                                      ScopeImpl scope,
                                      boolean isMultiInstance)
Parses a call activity (currently only supporting calling subprocesses).

Parameters:
callActivityElement - The XML element defining the call activity
scope - The current scope on which the call activity is defined.

parseBinding

protected void parseBinding(Element callActivityElement,
                            ActivityImpl activity,
                            CallableElement callableElement,
                            boolean isProcess)

parseVersion

protected void parseVersion(Element callActivityElement,
                            ActivityImpl activity,
                            CallableElement callableElement,
                            boolean isProcess)

parseInputParameter

protected void parseInputParameter(Element callActivityElement,
                                   ActivityImpl activity,
                                   CallableElement callableElement,
                                   boolean isProcess)

parseOutputParameter

protected void parseOutputParameter(Element callActivityElement,
                                    ActivityImpl activity,
                                    CallableElement callableElement,
                                    boolean isProcess)

parseProperties

public void parseProperties(Element element,
                            ActivityImpl activity)
Parses the properties of an element (if any) that can contain properties (processes, activities, etc.) Returns true if property subelemens are found.

Parameters:
element - The element that can contain properties.
activity - The activity where the property declaration is done.

parseProperty

public void parseProperty(Element propertyElement,
                          ActivityImpl activity)
Parses one property definition.

Parameters:
propertyElement - The 'property' element that defines how a property looks like and is handled.

parsePropertyCustomExtensions

public void parsePropertyCustomExtensions(ActivityImpl activity,
                                          Element propertyElement,
                                          String propertyName,
                                          String propertyType)
Parses the custom extensions for properties.

Parameters:
activity - The activity where the property declaration is done.
propertyElement - The 'property' element defining the property.
propertyName - The name of the property.
propertyType - The type of the property.

parseSequenceFlow

public void parseSequenceFlow(Element processElement,
                              ScopeImpl scope)
Parses all sequence flow of a scope.

Parameters:
processElement - The 'process' element wherein the sequence flow are defined.
scope - The scope to which the sequence flow must be added.

parseSequenceFlowConditionExpression

public void parseSequenceFlowConditionExpression(Element seqFlowElement,
                                                 TransitionImpl seqFlow)
Parses a condition expression on a sequence flow.

Parameters:
seqFlowElement - The 'sequenceFlow' element that can contain a condition.
seqFlow - The sequenceFlow object representation to which the condition must be added.

parseExecutionListenersOnScope

public void parseExecutionListenersOnScope(Element scopeElement,
                                           ScopeImpl scope)
Parses all execution-listeners on a scope.

Parameters:
scopeElement - the XML element containing the scope definition.
scope - the scope to add the executionListeners to.

isValidEventNameForScope

protected boolean isValidEventNameForScope(String eventName,
                                           Element listenerElement)
Check if the given event name is valid. If not, an appropriate error is added.


parseExecutionListenersOnTransition

public void parseExecutionListenersOnTransition(Element activitiElement,
                                                TransitionImpl activity)

parseExecutionListener

public ExecutionListener parseExecutionListener(Element executionListenerElement)
Parses an ExecutionListener implementation for the given executionListener element.

Parameters:
executionListenerElement - the XML element containing the executionListener definition.

parseDiagramInterchangeElements

public void parseDiagramInterchangeElements()

parseBPMNDiagram

public void parseBPMNDiagram(Element bpmndiagramElement)

parseBPMNPlane

public void parseBPMNPlane(Element bpmnPlaneElement)

parseBPMNShape

public void parseBPMNShape(Element bpmnShapeElement)

parseDIBounds

protected void parseDIBounds(Element bpmnShapeElement,
                             HasDIBounds target)

parseBPMNEdge

public void parseBPMNEdge(Element bpmnEdgeElement)

getProcessDefinitions

public List<ProcessDefinitionEntity> getProcessDefinitions()

getProcessDefinition

public ProcessDefinitionEntity getProcessDefinition(String processDefinitionKey)

name

public BpmnParse name(String name)
Overrides:
name in class Parse

sourceInputStream

public BpmnParse sourceInputStream(InputStream inputStream)
Overrides:
sourceInputStream in class Parse

sourceResource

public BpmnParse sourceResource(String resource,
                                ClassLoader classLoader)
Overrides:
sourceResource in class Parse

sourceResource

public BpmnParse sourceResource(String resource)
Overrides:
sourceResource in class Parse

sourceString

public BpmnParse sourceString(String string)
Overrides:
sourceString in class Parse

sourceUrl

public BpmnParse sourceUrl(String url)
Overrides:
sourceUrl in class Parse

sourceUrl

public BpmnParse sourceUrl(URL url)
Overrides:
sourceUrl in class Parse

parseBooleanAttribute

public Boolean parseBooleanAttribute(String booleanText,
                                     boolean defaultValue)

parseBooleanAttribute

public Boolean parseBooleanAttribute(String booleanText)

parseDoubleAttribute

public Double parseDoubleAttribute(Element element,
                                   String attributename,
                                   String doubleText,
                                   boolean required)

isExclusive

protected boolean isExclusive(Element element)

isAsyncBefore

protected boolean isAsyncBefore(Element element)

isAsyncAfter

protected boolean isAsyncAfter(Element element)

getJobDeclarations

public Map<String,List<JobDeclaration<?>>> getJobDeclarations()

getJobDeclarationsByKey

public List<JobDeclaration<?>> getJobDeclarationsByKey(String processDefinitionKey)

parseActivityInputOutput

protected void parseActivityInputOutput(Element activityElement,
                                        ActivityImpl activity)

checkActivityInputOutputSupported

protected boolean checkActivityInputOutputSupported(Element activityElement,
                                                    ActivityImpl activity,
                                                    IoMapping inputOutput)

checkActivityOutputParameterSupported

protected boolean checkActivityOutputParameterSupported(Element activityElement,
                                                        ActivityImpl activity)

ensureNoIoMappingDefined

protected void ensureNoIoMappingDefined(Element element)

createParameterValueProvider

protected ParameterValueProvider createParameterValueProvider(String value,
                                                              ExpressionManager expressionManager)

addTimeCycleWarning

protected void addTimeCycleWarning(Element timeCycleElement,
                                   String type)


Copyright © 2015 camunda services GmbH. All rights reserved.