Author: veithen
Date: Sat May 18 10:27:50 2013
New Revision: 1484086
URL: http://svn.apache.org/r1484086
Log:
Improved control flow and avoid unnecessary method calls.
Modified:
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/serializer/pull/SwitchingWrapper.java
Modified:
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/serializer/pull/SwitchingWrapper.java
URL:
http://svn.apache.org/viewvc/webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/serializer/pull/SwitchingWrapper.java?rev=1484086&r1=1484085&r2=1484086&view=diff
==============================================================================
---
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/serializer/pull/SwitchingWrapper.java
(original)
+++
webservices/axiom/trunk/modules/axiom-common-impl/src/main/java/org/apache/axiom/om/impl/common/serializer/pull/SwitchingWrapper.java
Sat May 18 10:27:50 2013
@@ -738,37 +738,38 @@ final class SwitchingWrapper extends Pul
}
} else {
OMNode current = (OMNode)node;
- OMContainer parent = current.getParent();
OMNode nextSibling = getNextSibling(current);
if (nextSibling != null) {
nextNode = nextSibling;
visited = false;
- } else if (parent.isComplete() || parent.getBuilder() ==
null) { // TODO: review this condition
- nextNode = parent;
- visited = true;
} else {
- nextNode = null;
- }
- }
- if (nextNode instanceof OMSourcedElement) {
- OMSourcedElement element = (OMSourcedElement)nextNode;
- if (!element.isExpanded()) {
- OMDataSource ds = element.getDataSource();
- if (ds != null &&
!(OMDataSourceUtil.isPushDataSource(ds)
- || (cache &&
OMDataSourceUtil.isDestructiveRead(ds)))) {
- XMLStreamReader reader = ds.getReader();
- while (reader.next() != START_ELEMENT) {
- // Just loop
- }
- serializer.switchState(new
IncludeWrapper(serializer, this, reader));
- node = nextNode;
+ OMContainer parent = current.getParent();
+ if (parent.isComplete() || parent.getBuilder() ==
null) { // TODO: review this condition
+ nextNode = parent;
visited = true;
- return START_ELEMENT;
+ } else {
+ nextNode = null;
}
}
}
if (nextNode != null) {
node = nextNode;
+ if (node instanceof OMSourcedElement) {
+ OMSourcedElement element = (OMSourcedElement)node;
+ if (!element.isExpanded()) {
+ OMDataSource ds = element.getDataSource();
+ if (ds != null &&
!(OMDataSourceUtil.isPushDataSource(ds)
+ || (cache &&
OMDataSourceUtil.isDestructiveRead(ds)))) {
+ XMLStreamReader reader = ds.getReader();
+ while (reader.next() != START_ELEMENT) {
+ // Just loop
+ }
+ serializer.switchState(new
IncludeWrapper(serializer, this, reader));
+ visited = true;
+ return START_ELEMENT;
+ }
+ }
+ }
if (node instanceof OMContainer) {
OMContainer container = (OMContainer)node;
if (visited) {