ctx.clear();
}
if(o instanceof ValueList)
{
ValueList valueList = (ValueList)o;
if(type.isSimple())
{
valueList.getInitializer().addTermValue(endName,
particle,
charHandler,
valueList,
unmarshalled,
null
);
}
else
{
valueList.getInitializer().addTextValue(endName,
particle,
charHandler,
valueList,
unmarshalled
);
}
}
else
{
charHandler.setValue(endName, element, o, unmarshalled);
}
}
}
for(int i = interceptorsTotal - 1; i >= 0; --i)
{
ElementInterceptor interceptor = (ElementInterceptor)interceptors.get(i);
interceptor.characters(((StackItem)stack.peek(interceptorsTotal - i)).o,
endName, type, nsRegistry, dataContent
);
}
}
}
else
{
o = null;
}
//
// endElement
//
StackItem parentItem = stack.size() == 1 ? null : stack.peek(1);
Object parent = parentItem == null ? null : parentItem.o;
ParticleHandler handler = stack.peek().handler;
if(o instanceof ValueList && !particle.getTerm().isSkip())
{
if(trace)
{
log.trace("endParticle " + endName + " valueList");
}
ValueList valueList = (ValueList)o;
o = valueList.getHandler().newInstance(particle, valueList);
}
else
{
o = handler.endParticle(o, endName, particle);
}