@Override public final void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException { getNamespaceDeclarationStack().pushNamespaces(qName, uri, attributes); startEvent.set(uri, localName, qName, attributes); lastEvent = startEvent; depth++; startElement(startEvent); if(nestedContentHandler != null) { // Replay the start element event from the parent handler onto the nested handler... replay(nestedContentHandler); } }
@Override public final void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException { getNamespaceDeclarationStack().pushNamespaces(qName, uri, attributes); startEvent.set(uri, localName, qName, attributes); lastEvent = startEvent; depth++; startElement(startEvent); if(nestedContentHandler != null) { // Replay the start element event from the parent handler onto the nested handler... replay(nestedContentHandler); } }
@Override public final void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException { getNamespaceDeclarationStack().pushNamespaces(qName, uri, attributes); startEvent.set(uri, localName, qName, attributes); lastEvent = startEvent; depth++; startElement(startEvent); if(nestedContentHandler != null) { // Replay the start element event from the parent handler onto the nested handler... replay(nestedContentHandler); } }
@Override public final void startElement(String uri, String localName, String qName, Attributes attributes) throws SAXException { getNamespaceDeclarationStack().pushNamespaces(qName, uri, attributes); startEvent.set(uri, localName, qName, attributes); lastEvent = startEvent; depth++; startElement(startEvent); if(nestedContentHandler != null) { // Replay the start element event from the parent handler onto the nested handler... replay(nestedContentHandler); } }
@Override public final void endElement(String uri, String localName, String qName) throws SAXException { try { endEvent.set(uri, localName, qName); lastEvent = endEvent; endElement(endEvent); depth--; } finally { if(!endReplayed && depth == 0 && parentContentHandler != null) { endReplayed = true; // Replay the last sax event from this handler onto the parent handler ... replay(parentContentHandler); // Reinstate the parent handler on the XMLReader so all events are // forwarded to it again ... XMLReader xmlReader = AbstractParser.getXMLReader(executionContext); xmlReader.setContentHandler(parentContentHandler); // Remove the nested handler (this handler) form the parent handler... parentContentHandler.resetNestedContentHandler(); } } getNamespaceDeclarationStack().popNamespaces(); }
@Override public final void endElement(String uri, String localName, String qName) throws SAXException { try { endEvent.set(uri, localName, qName); lastEvent = endEvent; endElement(endEvent); depth--; } finally { if(!endReplayed && depth == 0 && parentContentHandler != null) { endReplayed = true; // Replay the last sax event from this handler onto the parent handler ... replay(parentContentHandler); // Reinstate the parent handler on the XMLReader so all events are // forwarded to it again ... XMLReader xmlReader = AbstractParser.getXMLReader(executionContext); xmlReader.setContentHandler(parentContentHandler); // Remove the nested handler (this handler) form the parent handler... parentContentHandler.resetNestedContentHandler(); } } getNamespaceDeclarationStack().popNamespaces(); }
@Override public final void endElement(String uri, String localName, String qName) throws SAXException { try { endEvent.set(uri, localName, qName); lastEvent = endEvent; endElement(endEvent); depth--; } finally { if(!endReplayed && depth == 0 && parentContentHandler != null) { endReplayed = true; // Replay the last sax event from this handler onto the parent handler ... replay(parentContentHandler); // Reinstate the parent handler on the XMLReader so all events are // forwarded to it again ... XMLReader xmlReader = AbstractParser.getXMLReader(executionContext); xmlReader.setContentHandler(parentContentHandler); // Remove the nested handler (this handler) form the parent handler... parentContentHandler.resetNestedContentHandler(); } } getNamespaceDeclarationStack().popNamespaces(); }
@Override public final void endElement(String uri, String localName, String qName) throws SAXException { try { endEvent.set(uri, localName, qName); lastEvent = endEvent; endElement(endEvent); depth--; } finally { if(!endReplayed && depth == 0 && parentContentHandler != null) { endReplayed = true; // Replay the last sax event from this handler onto the parent handler ... replay(parentContentHandler); // Reinstate the parent handler on the XMLReader so all events are // forwarded to it again ... XMLReader xmlReader = AbstractParser.getXMLReader(executionContext); xmlReader.setContentHandler(parentContentHandler); // Remove the nested handler (this handler) form the parent handler... parentContentHandler.resetNestedContentHandler(); } } getNamespaceDeclarationStack().popNamespaces(); }