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 2011/07/10 14:08:20 UTC
svn commit: r1144843 - in /webservices/commons/trunk/modules/axiom/modules:
axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/
axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/
axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/so...
Author: veithen
Date: Sun Jul 10 12:08:19 2011
New Revision: 1144843
URL: http://svn.apache.org/viewvc?rev=1144843&view=rev
Log:
Eliminated some duplicate code.
Modified:
webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPHeaderImpl.java
webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11HeaderImpl.java
webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12HeaderImpl.java
webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPHeaderImpl.java
webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/soap11/SOAP11HeaderImpl.java
webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/soap12/SOAP12HeaderImpl.java
Modified: webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPHeaderImpl.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPHeaderImpl.java?rev=1144843&r1=1144842&r2=1144843&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPHeaderImpl.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/SOAPHeaderImpl.java Sun Jul 10 12:08:19 2011
@@ -24,6 +24,7 @@ import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMNamespace;
import org.apache.axiom.om.OMNode;
import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.OMNodeEx;
import org.apache.axiom.om.impl.dom.ElementImpl;
import org.apache.axiom.soap.SOAPConstants;
import org.apache.axiom.soap.SOAPEnvelope;
@@ -58,10 +59,31 @@ public abstract class SOAPHeaderImpl ext
super(envelope, SOAPConstants.HEADER_LOCAL_NAME, builder, factory);
}
- public abstract SOAPHeaderBlock addHeaderBlock(String localName,
- OMNamespace ns)
- throws OMException;
+ public SOAPHeaderBlock addHeaderBlock(String localName, OMNamespace ns)
+ throws OMException {
+
+ if (ns == null || ns.getNamespaceURI().length() == 0) {
+ throw new OMException(
+ "All the SOAP Header blocks should be namespace qualified");
+ }
+
+ OMNamespace namespace = findNamespace(ns.getNamespaceURI(), ns.getPrefix());
+ if (namespace != null) {
+ ns = namespace;
+ }
+
+ SOAPHeaderBlock soapHeaderBlock;
+ try {
+ soapHeaderBlock = createHeaderBlock(localName, ns);
+ } catch (SOAPProcessingException e) {
+ throw new OMException(e);
+ }
+ ((OMNodeEx) soapHeaderBlock).setComplete(true);
+ return soapHeaderBlock;
+ }
+ protected abstract SOAPHeaderBlock createHeaderBlock(String localname, OMNamespace ns);
+
public Iterator getHeadersToProcess(RolePlayer rolePlayer) {
return null; // TODO: Implement this!
}
Modified: webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11HeaderImpl.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11HeaderImpl.java?rev=1144843&r1=1144842&r2=1144843&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11HeaderImpl.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap11/SOAP11HeaderImpl.java Sun Jul 10 12:08:19 2011
@@ -19,10 +19,8 @@
package org.apache.axiom.soap.impl.dom.soap11;
-import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMNamespace;
import org.apache.axiom.om.OMXMLParserWrapper;
-import org.apache.axiom.om.impl.OMNodeEx;
import org.apache.axiom.om.impl.traverse.OMChildrenWithSpecificAttributeIterator;
import org.apache.axiom.soap.SOAP11Constants;
import org.apache.axiom.soap.SOAPEnvelope;
@@ -54,27 +52,8 @@ public class SOAP11HeaderImpl extends SO
super(envelope, builder, factory);
}
- public SOAPHeaderBlock addHeaderBlock(String localName, OMNamespace ns)
- throws OMException {
- if (ns == null || ns.getNamespaceURI().length() == 0) {
- throw new OMException(
- "All the SOAP Header blocks should be namespace qualified");
- }
-
- OMNamespace namespace = findNamespace(ns.getNamespaceURI(), ns.getPrefix());
- if (namespace != null) {
- ns = namespace;
- }
-
- SOAPHeaderBlock soapHeaderBlock = null;
- try {
- soapHeaderBlock = new SOAP11HeaderBlockImpl(localName, ns, this,
- (SOAPFactory) this.factory);
- } catch (SOAPProcessingException e) {
- throw new OMException(e);
- }
- ((OMNodeEx) soapHeaderBlock).setComplete(true);
- return soapHeaderBlock;
+ protected SOAPHeaderBlock createHeaderBlock(String localName, OMNamespace ns) {
+ return new SOAP11HeaderBlockImpl(localName, ns, this, (SOAPFactory)factory);
}
public Iterator extractHeaderBlocks(String role) {
Modified: webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12HeaderImpl.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12HeaderImpl.java?rev=1144843&r1=1144842&r2=1144843&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12HeaderImpl.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/soap/impl/dom/soap12/SOAP12HeaderImpl.java Sun Jul 10 12:08:19 2011
@@ -19,10 +19,8 @@
package org.apache.axiom.soap.impl.dom.soap12;
-import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMNamespace;
import org.apache.axiom.om.OMXMLParserWrapper;
-import org.apache.axiom.om.impl.OMNodeEx;
import org.apache.axiom.om.impl.traverse.OMChildrenWithSpecificAttributeIterator;
import org.apache.axiom.soap.SOAP12Constants;
import org.apache.axiom.soap.SOAPEnvelope;
@@ -52,26 +50,8 @@ public class SOAP12HeaderImpl extends SO
super(envelope, builder, factory);
}
- public SOAPHeaderBlock addHeaderBlock(String localName, OMNamespace ns) throws OMException {
- if (ns == null || ns.getNamespaceURI().length() == 0) {
- throw new OMException(
- "All the SOAP Header blocks should be namespace qualified");
- }
-
- OMNamespace namespace = findNamespace(ns.getNamespaceURI(), ns.getPrefix());
- if (namespace != null) {
- ns = namespace;
- }
-
- SOAPHeaderBlock soapHeaderBlock = null;
- try {
- soapHeaderBlock = new SOAP12HeaderBlockImpl(localName, ns, this,
- (SOAPFactory) this.factory);
- } catch (SOAPProcessingException e) {
- throw new OMException(e);
- }
- ((OMNodeEx) soapHeaderBlock).setComplete(true);
- return soapHeaderBlock;
+ protected SOAPHeaderBlock createHeaderBlock(String localName, OMNamespace ns) {
+ return new SOAP12HeaderBlockImpl(localName, ns, this, (SOAPFactory)factory);
}
Modified: webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPHeaderImpl.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPHeaderImpl.java?rev=1144843&r1=1144842&r2=1144843&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPHeaderImpl.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPHeaderImpl.java Sun Jul 10 12:08:19 2011
@@ -24,6 +24,7 @@ import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMNamespace;
import org.apache.axiom.om.OMNode;
import org.apache.axiom.om.OMXMLParserWrapper;
+import org.apache.axiom.om.impl.OMNodeEx;
import org.apache.axiom.soap.RolePlayer;
import org.apache.axiom.soap.SOAP12Constants;
import org.apache.axiom.soap.SOAP12Version;
@@ -250,10 +251,31 @@ public abstract class SOAPHeaderImpl ext
super(envelope, SOAPConstants.HEADER_LOCAL_NAME, builder, factory);
}
- public abstract SOAPHeaderBlock addHeaderBlock(String localName,
- OMNamespace ns)
- throws OMException;
+ public SOAPHeaderBlock addHeaderBlock(String localName, OMNamespace ns)
+ throws OMException {
+
+ if (ns == null || ns.getNamespaceURI().length() == 0) {
+ throw new OMException(
+ "All the SOAP Header blocks should be namespace qualified");
+ }
+
+ OMNamespace namespace = findNamespace(ns.getNamespaceURI(), ns.getPrefix());
+ if (namespace != null) {
+ ns = namespace;
+ }
+
+ SOAPHeaderBlock soapHeaderBlock;
+ try {
+ soapHeaderBlock = createHeaderBlock(localName, ns);
+ } catch (SOAPProcessingException e) {
+ throw new OMException(e);
+ }
+ ((OMNodeEx) soapHeaderBlock).setComplete(true);
+ return soapHeaderBlock;
+ }
+ protected abstract SOAPHeaderBlock createHeaderBlock(String localname, OMNamespace ns);
+
public Iterator getHeadersToProcess(RolePlayer rolePlayer) {
return new HeaderIterator(new RolePlayerChecker(rolePlayer));
}
Modified: webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/soap11/SOAP11HeaderImpl.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/soap11/SOAP11HeaderImpl.java?rev=1144843&r1=1144842&r2=1144843&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/soap11/SOAP11HeaderImpl.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/soap11/SOAP11HeaderImpl.java Sun Jul 10 12:08:19 2011
@@ -19,10 +19,8 @@
package org.apache.axiom.soap.impl.llom.soap11;
-import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMNamespace;
import org.apache.axiom.om.OMXMLParserWrapper;
-import org.apache.axiom.om.impl.OMNodeEx;
import org.apache.axiom.om.impl.traverse.OMChildrenWithSpecificAttributeIterator;
import org.apache.axiom.soap.SOAP11Constants;
import org.apache.axiom.soap.SOAPEnvelope;
@@ -58,28 +56,8 @@ public class SOAP11HeaderImpl extends SO
super(envelope, builder, factory);
}
- public SOAPHeaderBlock addHeaderBlock(String localName, OMNamespace ns)
- throws OMException {
-
- if (ns == null || ns.getNamespaceURI().length() == 0) {
- throw new OMException(
- "All the SOAP Header blocks should be namespace qualified");
- }
-
- OMNamespace namespace = findNamespace(ns.getNamespaceURI(), ns.getPrefix());
- if (namespace != null) {
- ns = namespace;
- }
-
- SOAPHeaderBlock soapHeaderBlock = null;
- try {
- soapHeaderBlock = new SOAP11HeaderBlockImpl(localName, ns, this,
- (SOAPFactory) this.factory);
- } catch (SOAPProcessingException e) {
- throw new OMException(e);
- }
- ((OMNodeEx) soapHeaderBlock).setComplete(true);
- return soapHeaderBlock;
+ protected SOAPHeaderBlock createHeaderBlock(String localName, OMNamespace ns) {
+ return new SOAP11HeaderBlockImpl(localName, ns, this, (SOAPFactory)factory);
}
public Iterator extractHeaderBlocks(String role) {
Modified: webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/soap12/SOAP12HeaderImpl.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/soap12/SOAP12HeaderImpl.java?rev=1144843&r1=1144842&r2=1144843&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/soap12/SOAP12HeaderImpl.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/soap12/SOAP12HeaderImpl.java Sun Jul 10 12:08:19 2011
@@ -19,10 +19,8 @@
package org.apache.axiom.soap.impl.llom.soap12;
-import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMNamespace;
import org.apache.axiom.om.OMXMLParserWrapper;
-import org.apache.axiom.om.impl.OMNodeEx;
import org.apache.axiom.om.impl.traverse.OMChildrenWithSpecificAttributeIterator;
import org.apache.axiom.soap.SOAP12Constants;
import org.apache.axiom.soap.SOAPEnvelope;
@@ -58,26 +56,8 @@ public class SOAP12HeaderImpl extends SO
super(envelope, builder, factory);
}
- public SOAPHeaderBlock addHeaderBlock(String localName, OMNamespace ns) throws OMException {
- if (ns == null || ns.getNamespaceURI().length() == 0) {
- throw new OMException(
- "All the SOAP Header blocks should be namespace qualified");
- }
-
- OMNamespace namespace = findNamespace(ns.getNamespaceURI(), ns.getPrefix());
- if (namespace != null) {
- ns = namespace;
- }
-
- SOAPHeaderBlock soapHeaderBlock = null;
- try {
- soapHeaderBlock = new SOAP12HeaderBlockImpl(localName, ns, this,
- (SOAPFactory) this.factory);
- } catch (SOAPProcessingException e) {
- throw new OMException(e);
- }
- ((OMNodeEx) soapHeaderBlock).setComplete(true);
- return soapHeaderBlock;
+ protected SOAPHeaderBlock createHeaderBlock(String localName, OMNamespace ns) {
+ return new SOAP12HeaderBlockImpl(localName, ns, this, (SOAPFactory)factory);
}