You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-commits@axis.apache.org by ve...@apache.org on 2014/07/12 01:51:41 UTC
svn commit: r1609866 - in
/axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj:
NodeImpl.java ProxyNode.java SOAPBodyElementImpl.java SOAPBodyImpl.java
SOAPElementImpl.java SOAPHeaderImpl.java
Author: veithen
Date: Fri Jul 11 23:51:40 2014
New Revision: 1609866
URL: http://svn.apache.org/r1609866
Log:
More SAAJ fixes and cleanups.
Modified:
axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/NodeImpl.java
axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/ProxyNode.java
axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPBodyElementImpl.java
axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPBodyImpl.java
axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java
axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPHeaderImpl.java
Modified: axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/NodeImpl.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/NodeImpl.java?rev=1609866&r1=1609865&r2=1609866&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/NodeImpl.java (original)
+++ axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/NodeImpl.java Fri Jul 11 23:51:40 2014
@@ -19,6 +19,8 @@
package org.apache.axis2.saaj;
import javax.xml.soap.Node;
+import javax.xml.soap.SOAPElement;
+import javax.xml.soap.SOAPException;
import org.apache.axiom.om.OMNode;
@@ -26,4 +28,16 @@ public abstract class NodeImpl<T extends
public NodeImpl(T target, S omTarget) {
super(target, omTarget);
}
+
+ public final void detachNode() {
+ omTarget.detach();
+ }
+
+ public final SOAPElement getParentElement() {
+ return (SOAPElement)getParentNode();
+ }
+
+ public void setParentElement(SOAPElement parent) throws SOAPException {
+ (((SOAPElementImpl<?>)parent).omTarget).addChild(this.omTarget);
+ }
}
Modified: axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/ProxyNode.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/ProxyNode.java?rev=1609866&r1=1609865&r2=1609866&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/ProxyNode.java (original)
+++ axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/ProxyNode.java Fri Jul 11 23:51:40 2014
@@ -20,12 +20,10 @@
package org.apache.axis2.saaj;
import org.apache.axiom.om.OMComment;
-import org.apache.axiom.om.OMContainer;
import org.apache.axiom.om.OMDocument;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMInformationItem;
-import org.apache.axiom.om.OMNode;
import org.apache.axiom.om.OMText;
import org.apache.axiom.soap.SOAPBody;
import org.apache.axiom.soap.SOAPEnvelope;
@@ -55,7 +53,6 @@ import javax.xml.soap.SOAPException;
public abstract class ProxyNode<T extends org.w3c.dom.Node, S extends OMInformationItem> implements Node {
protected final T target;
protected final S omTarget;
- protected SOAPElement parentElement;
static final String SAAJ_NODE = "saaj.node";
public ProxyNode(T target, S omTarget) {
@@ -73,35 +70,6 @@ public abstract class ProxyNode<T extend
}
/**
- * Removes this <code>Node</code> object from the tree. Once removed, this node can be garbage
- * collected if there are no application references to it.
- */
- public void detachNode() {
- this.detach();
- }
-
- public OMNode detach() {
- parentElement = null;
- return null;
- }
-
- /**
- * Removes this <code>Node</code> object from the tree. Once removed, this node can be garbage
- * collected if there are no application references to it.
- */
- public SOAPElement getParentElement() {
- return this.parentElement;
- }
-
- public OMContainer getParent() {
- return (OMContainer)this.parentElement;
- }
-
- /* public OMNode getOMNode() {
- return omNode;
- }*/
-
- /**
* Notifies the implementation that this <code>Node</code> object is no longer being used by the
* application and that the implementation is free to reuse this object for nodes that may be
* created later.
@@ -114,19 +82,6 @@ public abstract class ProxyNode<T extend
// There is no implementation in Axis 1.2 also
}
- /**
- * Sets the parent of this <code>Node</code> object to the given <code>SOAPElement</code>
- * object.
- *
- * @param parent the <code>SOAPElement</code> object to be set as the parent of this
- * <code>Node</code> object
- * @throws SOAPException if there is a problem in setting the parent to the given element
- * @see #getParentElement() getParentElement()
- */
- public void setParentElement(SOAPElement parent) throws SOAPException {
- this.parentElement = parent;
- }
-
public void setType(int nodeType) throws OMException {
throw new UnsupportedOperationException("TODO");
}
@@ -235,21 +190,20 @@ public abstract class ProxyNode<T extend
}
}
- // TODO: the existence of this method probably indicates a problem in TextImplEx
public org.w3c.dom.Node getParentNode() {
- return null;
+ return toSAAJNode(target.getParentNode());
}
public final boolean hasAttributes() {
- return parentElement.hasAttributes();
+ return target.hasAttributes();
}
public final boolean isSupported(String feature, String version) {
- return parentElement.isSupported(feature, version);
+ return target.isSupported(feature, version);
}
public final String getBaseURI() {
- return parentElement.getBaseURI();
+ return target.getBaseURI();
}
public final String getNodeValue() throws DOMException {
Modified: axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPBodyElementImpl.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPBodyElementImpl.java?rev=1609866&r1=1609865&r2=1609866&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPBodyElementImpl.java (original)
+++ axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPBodyElementImpl.java Fri Jul 11 23:51:40 2014
@@ -39,7 +39,7 @@ public class SOAPBodyElementImpl<T exten
if (!(parent instanceof SOAPBody)) {
throw new IllegalArgumentException("Parent is not a SOAPBody");
}
- this.parentElement = parent;
+ super.setParentElement(parent);
}
public SOAPElement addAttribute(QName qname, String value) throws SOAPException {
Modified: axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPBodyImpl.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPBodyImpl.java?rev=1609866&r1=1609865&r2=1609866&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPBodyImpl.java (original)
+++ axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPBodyImpl.java Fri Jul 11 23:51:40 2014
@@ -21,7 +21,6 @@ package org.apache.axis2.saaj;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMNamespace;
-import org.apache.axiom.om.OMNode;
import org.apache.axiom.soap.SOAP11Version;
import org.apache.axiom.soap.SOAP12Version;
import org.apache.axiom.soap.SOAPFactory;
@@ -124,12 +123,12 @@ public class SOAPBodyImpl extends SOAPEl
if (namespaceURI == null || namespaceURI.trim().length() == 0) {
childEle =
new SOAPBodyElementImpl<OMElement>(
- (OMElement)getOwnerDocument().createElement(localName));
+ (OMElement)target.getOwnerDocument().createElement(localName));
} else {
omTarget.declareNamespace(namespaceURI, prefix);
childEle =
new SOAPBodyElementImpl<OMElement>(
- (OMElement)getOwnerDocument().createElementNS(namespaceURI,
+ (OMElement)target.getOwnerDocument().createElementNS(namespaceURI,
localName));
}
@@ -477,15 +476,6 @@ public class SOAPBodyImpl extends SOAPEl
return saajEle;
}
- public void detachNode() {
- this.detach();
- }
-
- public OMNode detach() {
- this.parentElement = null;
- return this.omTarget.detach();
- }
-
public Iterator getChildElements(Name name) {
QName qName = new QName(name.getURI(), name.getLocalName());
return getChildren(omTarget.getChildrenWithName(qName));
Modified: axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java?rev=1609866&r1=1609865&r2=1609866&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java (original)
+++ axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPElementImpl.java Fri Jul 11 23:51:40 2014
@@ -640,30 +640,6 @@ public class SOAPElementImpl<T extends O
}
/**
- * Returns the parent element of this <code>Node</code> object. This method can throw an
- * <code>UnsupportedOperationException</code> if the tree is not kept in memory.
- *
- * @return the <code>SOAPElement</code> object that is the parent of this <code>Node</code>
- * object or <code>null</code> if this <code>Node</code> object is root
- * @throws UnsupportedOperationException if the whole tree is not kept in memory
- * @see #setParentElement(javax.xml.soap.SOAPElement) setParentElement(javax.xml.soap.SOAPElement)
- */
- public SOAPElement getParentElement() {
- if (this.parentElement == null) {
- Node parentNode = toSAAJNode(target.getParentNode());
- if (parentNode instanceof SOAPElement) {
- this.parentElement = (SOAPElement) parentNode;
- }
- }
- return this.parentElement;
- }
-
- public void setParentElement(SOAPElement parent) throws SOAPException {
- this.parentElement = parent;
- (((SOAPElementImpl<? extends OMElement>)parent).omTarget).addChild(this.omTarget);
- }
-
- /**
* Returns the the value of the immediate child of this <code>Node</code> object if a child
* exists and its value is text.
*
@@ -691,19 +667,6 @@ public class SOAPElementImpl<T extends O
return super.clone();
}
- public Node getParentNode() {
- Node parentNode = null;
- if (this.parentElement == null) {
- parentNode = toSAAJNode(target.getParentNode());
- if (parentNode instanceof SOAPElement) {
- this.parentElement = (SOAPElement) parentNode;
- }
- } else {
- parentNode = this.parentElement;
- }
- return parentNode;
- }
-
/**
* If this is a Text node then this method will set its value, otherwise it sets the value of
* the immediate (Text) child of this node. The value of the immediate child of this node can be
@@ -732,16 +695,6 @@ public class SOAPElementImpl<T extends O
}
}
- public void detachNode() {
- this.detach();
- }
-
- public OMNode detach() {
- OMNode omNode = this.omTarget.detach();
- this.parentElement = null;
- return omNode;
- }
-
public String toString() {
return target.toString();
}
Modified: axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPHeaderImpl.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPHeaderImpl.java?rev=1609866&r1=1609865&r2=1609866&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPHeaderImpl.java (original)
+++ axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPHeaderImpl.java Fri Jul 11 23:51:40 2014
@@ -21,7 +21,6 @@ package org.apache.axis2.saaj;
import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMNamespace;
-import org.apache.axiom.om.OMNode;
import org.apache.axiom.soap.SOAP11Version;
import org.apache.axiom.soap.SOAP12Version;
import org.apache.axiom.soap.SOAPFactory;
@@ -31,7 +30,6 @@ import org.w3c.dom.Element;
import javax.xml.namespace.QName;
import javax.xml.soap.Name;
-import javax.xml.soap.Node;
import javax.xml.soap.SOAPElement;
import javax.xml.soap.SOAPException;
import javax.xml.soap.SOAPHeader;
@@ -363,14 +361,4 @@ public class SOAPHeaderImpl extends SOAP
}
return childElements.iterator();
}
-
- public void detachNode() {
- this.detach();
- }
-
- public OMNode detach() {
- OMNode omNode = omTarget.detach();
- parentElement = null;
- return omNode;
- }
}