List of usage examples for javax.xml.stream XMLStreamReader getAttributeValue
public String getAttributeValue(String namespaceURI, String localName);
From source file:org.activiti.designer.eclipse.bpmn.BpmnParser.java
private static FieldExtension parseFieldExtension(XMLStreamReader xtr) { FieldExtension extension = new FieldExtension(); extension.setFieldName(xtr.getAttributeValue(null, "name")); extension.setExpression(getFieldExtensionValue(xtr)); return extension; }
From source file:org.activiti.designer.eclipse.bpmn.BpmnParser.java
private static String getFieldExtensionValue(XMLStreamReader xtr) { if (xtr.getAttributeValue(null, "stringValue") != null) { return xtr.getAttributeValue(null, "stringValue"); } else if (xtr.getAttributeValue(null, "expression") != null) { return xtr.getAttributeValue(null, "expression"); } else {//w w w . j ava 2 s . co m boolean readyWithFieldExtension = false; try { while (readyWithFieldExtension == false && xtr.hasNext()) { xtr.next(); if (xtr.isStartElement() && "string".equalsIgnoreCase(xtr.getLocalName())) { return xtr.getElementText().trim(); } else if (xtr.isStartElement() && "expression".equalsIgnoreCase(xtr.getLocalName())) { return xtr.getElementText().trim(); } else if (xtr.isEndElement() && "field".equalsIgnoreCase(xtr.getLocalName())) { return null; } } } catch (Exception e) { e.printStackTrace(); } } return null; }
From source file:org.activiti.designer.eclipse.bpmn.BpmnParser.java
private static List<ActivitiListener> parseListeners(XMLStreamReader xtr) { List<ActivitiListener> listenerList = new ArrayList<ActivitiListener>(); boolean readyWithListener = false; try {/*from w w w . ja v a 2 s . co m*/ ActivitiListener listener = null; while (readyWithListener == false && xtr.hasNext()) { xtr.next(); if (xtr.isStartElement() && ("executionListener".equalsIgnoreCase(xtr.getLocalName()) || "taskListener".equalsIgnoreCase(xtr.getLocalName()))) { if (xtr.getAttributeValue(null, "class") != null && "org.alfresco.repo.workflow.activiti.listener.ScriptExecutionListener" .equals(xtr.getAttributeValue(null, "class")) || "org.alfresco.repo.workflow.activiti.tasklistener.ScriptTaskListener" .equals(xtr.getAttributeValue(null, "class"))) { listener = new ActivitiListener(); listener.setEvent(xtr.getAttributeValue(null, "event")); listener.setImplementationType(ALFRESCO_TYPE); boolean readyWithAlfrescoType = false; while (readyWithAlfrescoType == false && xtr.hasNext()) { xtr.next(); if (xtr.isStartElement() && "field".equalsIgnoreCase(xtr.getLocalName())) { String script = getFieldExtensionValue(xtr); if (script != null && script.length() > 0) { listener.setImplementation(script); } readyWithAlfrescoType = true; } else if (xtr.isEndElement() && "extensionElements".equalsIgnoreCase(xtr.getLocalName())) { readyWithAlfrescoType = true; readyWithListener = true; } } } else { listener = parseListener(xtr); } listenerList.add(listener); } else if (xtr.isStartElement() && "field".equalsIgnoreCase(xtr.getLocalName())) { listener.getFieldExtensions().add(parseFieldExtension(xtr)); } else if (xtr.isEndElement() && "extensionElements".equalsIgnoreCase(xtr.getLocalName())) { readyWithListener = true; } } } catch (Exception e) { e.printStackTrace(); } return listenerList; }
From source file:org.activiti.designer.eclipse.bpmn.BpmnParser.java
private static ActivitiListener parseListener(XMLStreamReader xtr) { ActivitiListener listener = new ActivitiListener(); if (StringUtils.isNotEmpty(xtr.getAttributeValue(null, "class"))) { listener.setImplementation(xtr.getAttributeValue(null, "class")); listener.setImplementationType(CLASS_TYPE); } else if (StringUtils.isNotEmpty(xtr.getAttributeValue(null, "expression"))) { listener.setImplementation(xtr.getAttributeValue(null, "expression")); listener.setImplementationType(EXPRESSION_TYPE); } else if (StringUtils.isNotEmpty(xtr.getAttributeValue(null, "delegateExpression"))) { listener.setImplementation(xtr.getAttributeValue(null, "delegateExpression")); listener.setImplementationType(DELEGATE_EXPRESSION_TYPE); }/* w ww .j a va 2 s . c om*/ listener.setEvent(xtr.getAttributeValue(null, "event")); return listener; }
From source file:org.activiti.designer.eclipse.bpmn.BpmnParser.java
private CallActivity parseCallActivity(XMLStreamReader xtr) { CallActivity callActivity = new CallActivity(); if (xtr.getAttributeValue(null, "calledElement") != null && xtr.getAttributeValue(null, "calledElement").length() > 0) { callActivity.setCalledElement(xtr.getAttributeValue(null, "calledElement")); }/*from www .j a v a 2 s. c om*/ boolean readyWithTask = false; try { while (readyWithTask == false && xtr.hasNext()) { xtr.next(); if (xtr.isStartElement() && "extensionElements".equalsIgnoreCase(xtr.getLocalName())) { fillExtensionsForCallActivity(xtr, callActivity); } else if (xtr.isStartElement() && "multiInstanceLoopCharacteristics".equalsIgnoreCase(xtr.getLocalName())) { callActivity.setLoopCharacteristics(parseMultiInstanceDef(xtr)); } else if (xtr.isEndElement() && "callActivity".equalsIgnoreCase(xtr.getLocalName())) { readyWithTask = true; } } } catch (Exception e) { e.printStackTrace(); } return callActivity; }
From source file:org.activiti.designer.eclipse.bpmn.BpmnParser.java
private BusinessRuleTask parseBusinessRuleTask(XMLStreamReader xtr) { BusinessRuleTask businessRuleTask = new BusinessRuleTask(); if (xtr.getAttributeValue(ACTIVITI_EXTENSIONS_NAMESPACE, "rules") != null) { String ruleNames = xtr.getAttributeValue(ACTIVITI_EXTENSIONS_NAMESPACE, "rules"); if (ruleNames != null && ruleNames.length() > 0) { businessRuleTask.getRuleNames().clear(); if (ruleNames.contains(",") == false) { businessRuleTask.getRuleNames().add(ruleNames); } else { String[] ruleNameList = ruleNames.split(","); for (String rule : ruleNameList) { businessRuleTask.getRuleNames().add(rule); }//w w w. j a va 2 s .co m } } } if (xtr.getAttributeValue(ACTIVITI_EXTENSIONS_NAMESPACE, "ruleVariablesInput") != null) { String inputNames = xtr.getAttributeValue(ACTIVITI_EXTENSIONS_NAMESPACE, "ruleVariablesInput"); if (inputNames != null && inputNames.length() > 0) { businessRuleTask.getInputVariables().clear(); if (inputNames.contains(",") == false) { businessRuleTask.getInputVariables().add(inputNames); } else { String[] inputNamesList = inputNames.split(","); for (String input : inputNamesList) { businessRuleTask.getInputVariables().add(input); } } } } if (xtr.getAttributeValue(ACTIVITI_EXTENSIONS_NAMESPACE, "exclude") != null) { businessRuleTask .setExclude(Boolean.valueOf(xtr.getAttributeValue(ACTIVITI_EXTENSIONS_NAMESPACE, "exclude"))); } if (xtr.getAttributeValue(ACTIVITI_EXTENSIONS_NAMESPACE, "resultVariableName") != null) { businessRuleTask.setResultVariableName( xtr.getAttributeValue(ACTIVITI_EXTENSIONS_NAMESPACE, "resultVariableName")); } boolean readyWithTask = false; try { while (readyWithTask == false && xtr.hasNext()) { xtr.next(); if (xtr.isStartElement() && "extensionElements".equalsIgnoreCase(xtr.getLocalName())) { businessRuleTask.getExecutionListeners().addAll(parseListeners(xtr)); } else if (xtr.isStartElement() && "multiInstanceLoopCharacteristics".equalsIgnoreCase(xtr.getLocalName())) { businessRuleTask.setLoopCharacteristics(parseMultiInstanceDef(xtr)); } else if (xtr.isEndElement() && "businessRuleTask".equalsIgnoreCase(xtr.getLocalName())) { readyWithTask = true; } } } catch (Exception e) { e.printStackTrace(); } return businessRuleTask; }
From source file:org.activiti.designer.eclipse.bpmn.BpmnParser.java
private BoundaryEventModel parseBoundaryEvent(XMLStreamReader xtr) { BoundaryEvent boundaryEvent = new BoundaryEvent(); boundaryEvent.setName(xtr.getAttributeValue(null, "name")); if (xtr.getAttributeValue(null, "cancelActivity") != null) { String cancelActivity = xtr.getAttributeValue(null, "cancelActivity"); if ("true".equalsIgnoreCase(cancelActivity)) { boundaryEvent.setCancelActivity(true); } else {//from w w w . ja v a 2 s.co m boundaryEvent.setCancelActivity(false); } } BoundaryEventModel model = new BoundaryEventModel(); model.boundaryEvent = boundaryEvent; model.attachedRef = xtr.getAttributeValue(null, "attachedToRef"); try { while (xtr.hasNext()) { xtr.next(); if (xtr.isStartElement() && "timerEventDefinition".equalsIgnoreCase(xtr.getLocalName())) { model.type = BoundaryEventModel.TIMEEVENT; boundaryEvent.getEventDefinitions().add(parseTimerEventDefinition(xtr)); break; } else if (xtr.isStartElement() && "errorEventDefinition".equalsIgnoreCase(xtr.getLocalName())) { model.type = BoundaryEventModel.ERROREVENT; boundaryEvent.getEventDefinitions().add(parseErrorEventDefinition(xtr)); break; } else if (xtr.isStartElement() && "signalEventDefinition".equalsIgnoreCase(xtr.getLocalName())) { model.type = BoundaryEventModel.SIGNALEVENT; boundaryEvent.getEventDefinitions().add(parseSignalEventDefinition(xtr)); break; } else if (xtr.isEndElement() && "boundaryEvent".equalsIgnoreCase(xtr.getLocalName())) { break; } } } catch (Exception e) { e.printStackTrace(); } return model; }
From source file:org.activiti.designer.eclipse.bpmn.BpmnParser.java
private boolean parseAsync(XMLStreamReader xtr) { boolean async = false; String asyncString = xtr.getAttributeValue(ACTIVITI_EXTENSIONS_NAMESPACE, "async"); if ("true".equalsIgnoreCase(asyncString)) { async = true;/*from w ww .j a v a 2 s . c o m*/ } return async; }
From source file:org.activiti.designer.eclipse.bpmn.BpmnParser.java
private boolean parseNotExclusive(XMLStreamReader xtr) { boolean notExclusive = false; String exclusiveString = xtr.getAttributeValue(ACTIVITI_EXTENSIONS_NAMESPACE, "exclusive"); if ("false".equalsIgnoreCase(exclusiveString)) { notExclusive = true;//from ww w .jav a 2 s. c o m } return notExclusive; }
From source file:org.activiti.designer.eclipse.bpmn.BpmnParser.java
private ErrorEventDefinition parseErrorEventDefinition(XMLStreamReader xtr) { ErrorEventDefinition eventDefinition = new ErrorEventDefinition(); if (StringUtils.isNotEmpty(xtr.getAttributeValue(null, "errorRef"))) { eventDefinition.setErrorCode(xtr.getAttributeValue(null, "errorRef")); }/* w ww .ja v a 2s. c o m*/ return eventDefinition; }