private void visitResolvedNode(Node originalValueNode, Node resolvedNode, TagResolver tagResolver) { Tag tag = originalValueNode.getTag(); boolean tagResolved = tagResolver != null; if (tagResolved) { tagResolver.beforeProcessingResolvedNode(tag, originalValueNode, resolvedNode); nodeHandler.onCustomTagStart(tag, originalValueNode, resolvedNode); } visit(resolvedNode, VALUE); if (tagResolved) { nodeHandler.onCustomTagEnd(tag, originalValueNode, resolvedNode); tagResolver.afterProcessingResolvedNode(tag, originalValueNode, resolvedNode); } }
visit(keyNode, KEY); visitResolvedNode(originalValueNode, resolvedNode, currentTagResolver); nodeHandler.onTupleEnd(nodeTuple);
visit(keyNode, KEY); visitResolvedNode(originalValueNode, resolvedNode, currentTagResolver); nodeHandler.onTupleEnd(nodeTuple);
private void visitResolvedNode(Node originalValueNode, Node resolvedNode, TagResolver tagResolver) { Tag tag = originalValueNode.getTag(); boolean tagResolved = tagResolver != null; if (tagResolved) { tagResolver.beforeProcessingResolvedNode(tag, originalValueNode, resolvedNode); nodeHandler.onCustomTagStart(tag, originalValueNode, resolvedNode); } visit(resolvedNode, VALUE); if (tagResolved) { nodeHandler.onCustomTagEnd(tag, originalValueNode, resolvedNode); tagResolver.afterProcessingResolvedNode(tag, originalValueNode, resolvedNode); } }