public void writeNode(Node node, StringBuilder xmlDump, int metaDataType) { FaultNode faultNode = (FaultNode) node; writeNode("endEvent", faultNode, xmlDump, metaDataType); xmlDump.append(">" + EOL); writeExtensionElements(node, xmlDump); if (faultNode.getFaultVariable() != null) { xmlDump.append(" <dataInput id=\"" + XmlBPMNProcessDumper.getUniqueNodeId(faultNode) + "_Input\" name=\"error\" />" + EOL); xmlDump.append(" <dataInputAssociation>" + EOL); xmlDump.append( " <sourceRef>" + XmlDumper.replaceIllegalChars(faultNode.getFaultVariable()) + "</sourceRef>" + EOL + " <targetRef>" + XmlBPMNProcessDumper.getUniqueNodeId(faultNode) + "_Input</targetRef>" + EOL); xmlDump.append(" </dataInputAssociation>" + EOL); xmlDump.append(" <inputSet>" + EOL); xmlDump.append(" <dataInputRefs>" + XmlBPMNProcessDumper.getUniqueNodeId(faultNode) + "_Input</dataInputRefs>" + EOL); xmlDump.append(" </inputSet>" + EOL); } if (faultNode.isTerminateParent()) { String errorCode = faultNode.getFaultName(); String errorId = getErrorIdForErrorCode(errorCode, faultNode); xmlDump.append(" <errorEventDefinition errorRef=\"" + XmlBPMNProcessDumper.replaceIllegalCharsAttribute(errorId) + "\" />" + EOL); } else { xmlDump.append(" <escalationEventDefinition escalationRef=\"" + XmlBPMNProcessDumper.replaceIllegalCharsAttribute(faultNode.getFaultName()) + "\" />" + EOL); } endNode("endEvent", xmlDump); }
} else if ("errorEventDefinition".equals(nodeName)) { FaultNode faultNode = new FaultNode(); faultNode.setId(node.getId()); faultNode.setName(node.getName()); faultNode.setTerminateParent(true); faultNode.setMetaData("UniqueId", node.getMetaData().get("UniqueId")); node = faultNode; super.handleNode(node, element, uri, localName, parser); } else if ("escalationEventDefinition".equals(nodeName)) { FaultNode faultNode = new FaultNode(); faultNode.setId(node.getId()); faultNode.setName(node.getName()); faultNode.setMetaData("UniqueId", node.getMetaData().get("UniqueId")); node = faultNode; super.handleNode(node, element, uri, localName, parser);
public void handleNode(final Node node, final Element element, final String uri, final String localName, final ExtensibleXmlParser parser) throws SAXException { super.handleNode(node, element, uri, localName, parser); FaultNode faultNode = (FaultNode) node; String faultName = element.getAttribute("faultName"); if (faultName != null && faultName.length() != 0 ) { faultNode.setFaultName(faultName); } String faultVariable = element.getAttribute("faultVariable"); if (faultVariable != null && !"".equals(faultVariable) ) { faultNode.setFaultVariable(faultVariable); } }
protected Object getFaultData() { Object value = null; String faultVariable = getFaultNode().getFaultVariable(); if (faultVariable != null) { VariableScopeInstance variableScopeInstance = (VariableScopeInstance) resolveContextInstance(VariableScope.VARIABLE_SCOPE, faultVariable); if (variableScopeInstance != null) { value = variableScopeInstance.getVariable(faultVariable); } else { logger.error("Could not find variable scope for variable {}", faultVariable); logger.error("when trying to execute fault node {}", getFaultNode().getName()); logger.error("Continuing without setting value."); } } return value; }
public void writeNode(Node node, StringBuilder xmlDump, boolean includeMeta) { FaultNode faultNode = (FaultNode) node; writeNode("fault", faultNode, xmlDump, includeMeta); String faultName = faultNode.getFaultName(); if (faultName != null && faultName.length() != 0) { xmlDump.append("faultName=\"" + faultName + "\" "); } String faultVariable = faultNode.getFaultVariable(); if (faultVariable != null && faultVariable.length() != 0) { xmlDump.append("faultVariable=\"" + faultVariable + "\" "); } if (includeMeta && containsMetaData(faultNode)) { xmlDump.append(">" + EOL); writeMetaData(faultNode, xmlDump); endNode("fault", xmlDump); } else { endNode(xmlDump); } }
process.addNode(ruleSetNode); FaultNode faultNode = new FaultNode(); faultNode.setName("action"); faultNode.setMetaData("x", 1); faultNode.setMetaData("y", 2); faultNode.setMetaData("width", 3); faultNode.setMetaData("height", 4); faultNode.setFaultName("faultName"); faultNode.setFaultVariable("faultVariable"); process.addNode(faultNode);
if (node instanceof FaultNode) { FaultNode faultNode = (FaultNode) node; if (eventSubProcessHandlers.contains(faultNode.getFaultName())) { faultNode.setTerminateParent(false);
if (node instanceof FaultNode) { FaultNode faultNode = (FaultNode) node; if (!faultNode.isTerminateParent()) { String escalationCode = faultNode.getFaultName(); if (!escalations.contains(escalationCode)) { escalations.add(escalationCode);
protected Node createNode() { return new FaultNode(); }
protected String getFaultName() { return getFaultNode().getFaultName(); }
throw new IllegalArgumentException("Could not find error " + errorRef); faultNode.setFaultName(error.getErrorCode()); faultNode.setTerminateParent(true);
if (faultNode.getFrom() == null && !acceptsNoIncomingConnections(node)) { addErrorMessage(process, node, "Fault has no incoming connection."); if (faultNode.getFaultName() == null) { addErrorMessage(process, node,
public FaultNodeFactory setFaultName(String faultName) { ((FaultNode) getNode()).setFaultName(faultName); return this; } }
protected void readFaultDataInputAssociation(org.w3c.dom.Node xmlNode, FaultNode faultNode) { // sourceRef org.w3c.dom.Node subNode = xmlNode.getFirstChild(); String faultVariable = subNode.getTextContent(); faultNode.setFaultVariable(faultVariable); }
nodeInstanceContainer.removeNodeInstance(this); boolean exceptionHandled = false; if (getFaultNode().isTerminateParent()) {
if (node instanceof FaultNode) { FaultNode faultNode = (FaultNode) node; if (eventSubProcessHandlers.contains(faultNode.getFaultName())) { faultNode.setTerminateParent(false);
public void writeNode(Node node, StringBuilder xmlDump, boolean includeMeta) { FaultNode faultNode = (FaultNode) node; writeNode("fault", faultNode, xmlDump, includeMeta); String faultName = faultNode.getFaultName(); if (faultName != null && faultName.length() != 0) { xmlDump.append("faultName=\"" + faultName + "\" "); } String faultVariable = faultNode.getFaultVariable(); if (faultVariable != null && faultVariable.length() != 0) { xmlDump.append("faultVariable=\"" + faultVariable + "\" "); } if (includeMeta && containsMetaData(faultNode)) { xmlDump.append(">" + EOL); writeMetaData(faultNode, xmlDump); endNode("fault", xmlDump); } else { endNode(xmlDump); } }
if (node instanceof FaultNode) { FaultNode faultNode = (FaultNode) node; if (!faultNode.isTerminateParent()) { String escalationCode = faultNode.getFaultName(); if (!escalations.contains(escalationCode)) { escalations.add(escalationCode);
protected Node createNode() { return new FaultNode(); }
protected String getFaultName() { return getFaultNode().getFaultName(); }