You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ws.apache.org by ve...@apache.org on 2016/02/05 08:59:42 UTC
svn commit: r1728615 -
/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/builder/StAXOMBuilder.java
Author: veithen
Date: Fri Feb 5 07:59:42 2016
New Revision: 1728615
URL: http://svn.apache.org/viewvc?rev=1728615&view=rev
Log:
Code cleanup.
Modified:
webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/builder/StAXOMBuilder.java
Modified: webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/builder/StAXOMBuilder.java
URL: http://svn.apache.org/viewvc/webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/builder/StAXOMBuilder.java?rev=1728615&r1=1728614&r2=1728615&view=diff
==============================================================================
--- webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/builder/StAXOMBuilder.java (original)
+++ webservices/axiom/trunk/aspects/om-aspects/src/main/java/org/apache/axiom/om/impl/common/builder/StAXOMBuilder.java Fri Feb 5 07:59:42 2016
@@ -598,14 +598,7 @@ public class StAXOMBuilder implements Bu
switch (token) {
case XMLStreamConstants.START_ELEMENT: {
- handler.elementLevel++;
- OMNode node = createNextOMElement();
- // If the node was created by a custom builder, then it will be complete;
- // in this case, the target doesn't change
- if (!node.isComplete()) {
- handler.target = (AxiomContainer)node;
- }
- handler.postProcessNode(node);
+ handler.postProcessNode(createNextOMElement());
break;
}
case XMLStreamConstants.CHARACTERS:
@@ -667,25 +660,28 @@ public class StAXOMBuilder implements Bu
* @return TODO
*/
private OMNode createNextOMElement() {
- OMNode newElement = null;
- if (customBuilderForPayload != null && payloadSelector.isPayload(handler.elementLevel, handler.target)) {
+ OMElement newElement = null;
+ if (customBuilderForPayload != null && payloadSelector.isPayload(handler.elementLevel+1, handler.target)) {
newElement = createWithCustomBuilder(customBuilderForPayload);
}
- if (newElement == null && customBuilders != null && handler.elementLevel <= this.maxDepthForCustomBuilders) {
+ if (newElement == null && customBuilders != null && handler.elementLevel < this.maxDepthForCustomBuilders) {
CustomBuilder customBuilder = customBuilders.get(parser.getNamespaceURI(), parser.getLocalName());
if (customBuilder != null) {
newElement = createWithCustomBuilder(customBuilder);
}
}
if (newElement == null) {
- newElement = createOMElement();
- } else {
- handler.elementLevel--; // Decrease level since custom builder read the end element event
+ handler.elementLevel++;
+ newElement = omfactory.createAxiomElement(
+ handler.model.determineElementType(handler.target, handler.elementLevel, parser.getNamespaceURI(), parser.getLocalName()),
+ parser.getLocalName(), handler.target, this);
+ populateOMElement(newElement);
+ handler.target = (AxiomContainer)newElement;
}
return newElement;
}
- private OMNode createWithCustomBuilder(CustomBuilder customBuilder) {
+ private OMElement createWithCustomBuilder(CustomBuilder customBuilder) {
String namespace = parser.getNamespaceURI();
if (namespace == null) {
@@ -707,7 +703,7 @@ public class StAXOMBuilder implements Bu
handler.target.setComplete(true);
// Use target.getOMFactory() because the factory may actually be a SOAPFactory
- OMNode node = customBuilder.create(namespace, localPart, handler.target, parser, handler.target.getOMFactory());
+ OMElement node = customBuilder.create(namespace, localPart, handler.target, parser, handler.target.getOMFactory());
// TODO: dirty hack part 2
handler.target.setComplete(false);
@@ -743,20 +739,6 @@ public class StAXOMBuilder implements Bu
}
}
- /**
- * Method createOMElement.
- *
- * @return Returns OMNode.
- * @throws OMException
- */
- private OMNode createOMElement() throws OMException {
- AxiomElement node = omfactory.createAxiomElement(
- handler.model.determineElementType(handler.target, handler.elementLevel, parser.getNamespaceURI(), parser.getLocalName()),
- parser.getLocalName(), handler.target, this);
- populateOMElement(node);
- return node;
- }
-
private void createDTD() throws OMException {
DTDReader dtdReader;
try {