public void startElement(Txn transaction, ElementImpl element, NodePath path) { if (config != null) { boolean mixedContent = config.matchMixedElement(path); if (mixedContent || config.hasQNameIndex(element.getQName())) { ElementContent contentBuf = new ElementContent( element.getQName(), mixedContent || config.preserveMixedContent(element.getQName())); contentStack.push(contentBuf); } } super.startElement(transaction, element, path); }
public void endElement(Txn transaction, ElementImpl element, NodePath path) { if (config != null) { boolean mixedContent = config.matchMixedElement(path); if (mixedContent || config.hasQNameIndex(element.getQName())) { ElementContent contentBuf = (ElementContent) contentStack.pop(); element.getQName().setNameType(ElementValue.ELEMENT); engine.storeText( element, contentBuf, mixedContent ? NativeTextEngine.FOURTH_OPTION : NativeTextEngine.TEXT_BY_QNAME, null, mode == REMOVE_ALL_NODES); } } super.endElement(transaction, element, path); }