@Override protected void exitData(final Node node) { final NamedValuePipe dataPipe = stack.pop().getPipe(); final NamedValuePipe interceptor = interceptorFactory.createNamedValueInterceptor(); final NamedValuePipe delegate; if (interceptor == null) { delegate = dataPipe; } else { delegate = interceptor; delegate.addNamedValueSource(dataPipe); } final StackFrame parent = stack.peek(); if (parent.isInEntityName()) { // Protected xsd schema and by assertion in enterName: ((Entity) parent.getPipe()).setNameSource(delegate); } else if (parent.isInCondition()) { // Protected xsd schema and by assertion in enterIf: ((ConditionAware) parent.getPipe()).setConditionSource(delegate); } else { parent.getPipe().addNamedValueSource(delegate); } }
function.addNamedValueSource(delegate); delegate.addNamedValueSource(head.getPipe());
} else { delegate = interceptor; delegate.addNamedValueSource(tailPipe); parent.getPipe().addNamedValueSource(delegate);