public Object end(final String uri, final String localName, final ExtensibleXmlParser parser) throws SAXException { final Element element = parser.endElementBuilder(); Node node = (Node) parser.getCurrent(); // determine type of event definition, so the correct type of node // can be generated handleNode(node, element, uri, localName, parser); org.w3c.dom.Node xmlNode = element.getFirstChild(); while (xmlNode != null) { String nodeName = xmlNode.getNodeName(); if ("multiInstanceLoopCharacteristics".equals(nodeName)) { // create new timerNode ForEachNode forEachNode = new ForEachNode(); forEachNode.setId(node.getId()); forEachNode.setMetaData("UniqueId", node.getMetaData().get("UniqueId")); node.setMetaData("UniqueId", null); node.setMetaData("hidden", true); forEachNode.addNode(node); forEachNode.linkIncomingConnections( NodeImpl.CONNECTION_DEFAULT_TYPE, node.getId(), NodeImpl.CONNECTION_DEFAULT_TYPE); forEachNode.linkOutgoingConnections( node.getId(), NodeImpl.CONNECTION_DEFAULT_TYPE, NodeImpl.CONNECTION_DEFAULT_TYPE); node = forEachNode; handleForEachNode(node, element, uri, localName, parser); break; } xmlNode = xmlNode.getNextSibling(); } NodeContainer nodeContainer = (NodeContainer) parser.getParent(); nodeContainer.addNode(node); return node; }
public Object end(final String uri, final String localName, final ExtensibleXmlParser parser) throws SAXException { final Element element = parser.endElementBuilder(); ValueObject valueObject = (ValueObject) parser.getParent(); String text = ((Text) element.getChildNodes().item(0)).getWholeText(); if (text != null) { text = text.trim(); if ("".equals(text)) { text = null; } } Object value = restoreValue(text, valueObject.getType(), parser); valueObject.setValue(value); return null; }
public Object end(final String uri, final String localName, final ExtensibleXmlParser parser) throws SAXException { final Element element = parser.endElementBuilder(); Node node = (Node) parser.getCurrent(); // determine type of event definition, so the correct type of node // can be generated org.w3c.dom.Node xmlNode = element.getFirstChild(); while (xmlNode != null) { String nodeName = xmlNode.getNodeName(); if ("signalEventDefinition".equals(nodeName)) { // reuse already created EventNode handleSignalNode(node, element, uri, localName, parser); break; } else if ("messageEventDefinition".equals(nodeName)) { // reuse already created EventNode handleMessageNode(node, element, uri, localName, parser); break; } else if ("timerEventDefinition".equals(nodeName)) { // create new timerNode TimerNode timerNode = new TimerNode(); timerNode.setId(node.getId()); timerNode.setName(node.getName()); timerNode.setMetaData("UniqueId", node.getMetaData().get("UniqueId")); node = timerNode; handleTimerNode(node, element, uri, localName, parser); break; } else if ("conditionalEventDefinition".equals(nodeName)) { // create new stateNode StateNode stateNode = new StateNode(); stateNode.setId(node.getId()); stateNode.setName(node.getName()); stateNode.setMetaData("UniqueId", node.getMetaData().get("UniqueId")); node = stateNode; handleStateNode(node, element, uri, localName, parser); break; } else if ("linkEventDefinition".equals(nodeName)) { CatchLinkNode linkNode = new CatchLinkNode(); linkNode.setId(node.getId()); node = linkNode; handleLinkNode(element, node, xmlNode, parser); break; } xmlNode = xmlNode.getNextSibling(); } NodeContainer nodeContainer = (NodeContainer) parser.getParent(); nodeContainer.addNode(node); return node; }
public Object end( final String uri, final String localName, final ExtensibleXmlParser xmlPackageReader) throws SAXException { final Element element = xmlPackageReader.endElementBuilder(); ActionNode actionNode = (ActionNode) xmlPackageReader.getCurrent(); String text = ((org.w3c.dom.Text) element.getChildNodes().item(0)).getWholeText(); DroolsConsequenceAction actionText = new DroolsConsequenceAction("mvel", "list.add(\"" + text + "\")"); actionNode.setAction(actionText); return actionNode; }
public Object end(final String uri, final String localName, final ExtensibleXmlParser parser) throws SAXException { final Element element = parser.endElementBuilder(); final FromDescr fromDescr = (FromDescr) parser.getCurrent(); Object parent = parser.getParent(); final PatternDescr patternDescr = (PatternDescr) parent; final ConditionalElementDescr parentDescr = (ConditionalElementDescr) parser.getParent(1); if (element.getElementsByTagName("expression").getLength() > 0) { patternDescr.setSource(fromDescr); } return fromDescr; }
public Object end(final String uri, final String localName, final ExtensibleXmlParser parser) throws SAXException { final Element element = parser.endElementBuilder(); Node node = (Node) parser.getCurrent(); // determine type of event definition, so the correct type of node // can be generated boolean found = false; org.w3c.dom.Node xmlNode = element.getFirstChild(); while (xmlNode != null) { String nodeName = xmlNode.getNodeName(); if ("multiInstanceLoopCharacteristics".equals(nodeName)) { // create new timerNode ForEachNode forEachNode = new ForEachNode(); forEachNode.setId(node.getId()); forEachNode.setName(node.getName()); for (org.kie.api.definition.process.Node subNode : ((CompositeContextNode) node).getNodes()) { forEachNode.addNode(subNode); } forEachNode.setMetaData("UniqueId", ((CompositeContextNode) node).getMetaData("UniqueId")); forEachNode.setMetaData( ProcessHandler.CONNECTIONS, ((CompositeContextNode) node).getMetaData(ProcessHandler.CONNECTIONS)); VariableScope v = (VariableScope) ((CompositeContextNode) node).getDefaultContext(VariableScope.VARIABLE_SCOPE); ((VariableScope) ((CompositeContextNode) forEachNode.internalGetNode(2)) .getDefaultContext(VariableScope.VARIABLE_SCOPE)) .setVariables(v.getVariables()); node = forEachNode; handleForEachNode(node, element, uri, localName, parser); found = true; break; } xmlNode = xmlNode.getNextSibling(); } if (!found) { handleCompositeContextNode(node, element, uri, localName, parser); } NodeContainer nodeContainer = (NodeContainer) parser.getParent(); nodeContainer.addNode(node); return node; }
public Object end(final String uri, final String localName, final ExtensibleXmlParser parser) throws SAXException { final Element element = parser.endElementBuilder(); final AccumulateDescr accumulateDescr = (AccumulateDescr) parser.getCurrent(); final Object parent = parser.getParent(); if (parent.getClass().getName().equals(FromDescr.class.getName())) { final PatternDescr result = (PatternDescr) parser.getParent(1); result.setSource(accumulateDescr); } else if (parent instanceof ConditionalElementDescr) { final ConditionalElementDescr parentDescr = (ConditionalElementDescr) parent; parentDescr.addDescr(accumulateDescr); } return accumulateDescr; }
public Object end(final String uri, final String localName, final ExtensibleXmlParser parser) throws SAXException { parser.endElementBuilder(); return parser.getCurrent(); }