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 2012/06/09 11:18:27 UTC
svn commit: r1348340 [2/2] - in /axis/axis2/java/core/trunk/modules:
jaxws/src/org/apache/axis2/jaxws/message/util/impl/ saaj/
saaj/src/org/apache/axis2/saaj/ saaj/src/org/apache/axis2/saaj/util/
Modified: axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPFaultImpl.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPFaultImpl.java?rev=1348340&r1=1348339&r2=1348340&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPFaultImpl.java (original)
+++ axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPFaultImpl.java Sat Jun 9 09:18:25 2012
@@ -19,13 +19,13 @@
package org.apache.axis2.saaj;
+import org.apache.axiom.om.OMElement;
import org.apache.axiom.om.OMFactory;
import org.apache.axiom.om.OMNamespace;
-import org.apache.axiom.om.impl.dom.DOOMAbstractFactory;
-import org.apache.axiom.om.impl.dom.ElementImpl;
-import org.apache.axiom.om.impl.dom.NodeImpl;
import org.apache.axiom.soap.SOAP11Constants;
+import org.apache.axiom.soap.SOAP11Version;
import org.apache.axiom.soap.SOAP12Constants;
+import org.apache.axiom.soap.SOAP12Version;
import org.apache.axiom.soap.SOAPFactory;
import org.apache.axiom.soap.SOAPFaultCode;
import org.apache.axiom.soap.SOAPFaultDetail;
@@ -35,15 +35,7 @@ import org.apache.axiom.soap.SOAPFaultRo
import org.apache.axiom.soap.SOAPFaultSubCode;
import org.apache.axiom.soap.SOAPFaultText;
import org.apache.axiom.soap.SOAPFaultValue;
-import org.apache.axiom.soap.impl.dom.SOAPFaultValueImpl;
-import org.apache.axiom.soap.impl.dom.soap11.SOAP11Factory;
-import org.apache.axiom.soap.impl.dom.soap11.SOAP11FaultDetailImpl;
-import org.apache.axiom.soap.impl.dom.soap11.SOAP11FaultReasonImpl;
-import org.apache.axiom.soap.impl.dom.soap11.SOAP11FaultRoleImpl;
-import org.apache.axiom.soap.impl.dom.soap12.SOAP12Factory;
-import org.apache.axiom.soap.impl.dom.soap12.SOAP12FaultDetailImpl;
-import org.apache.axiom.soap.impl.dom.soap12.SOAP12FaultRoleImpl;
-import org.apache.axiom.soap.impl.dom.soap12.SOAP12FaultValueImpl;
+import org.w3c.dom.Element;
import javax.xml.namespace.QName;
import javax.xml.soap.Detail;
@@ -59,21 +51,19 @@ import java.util.Iterator;
import java.util.List;
import java.util.Locale;
-public class SOAPFaultImpl extends SOAPBodyElementImpl implements SOAPFault {
+public class SOAPFaultImpl extends SOAPBodyElementImpl<org.apache.axiom.soap.SOAPFault> implements SOAPFault {
- protected org.apache.axiom.soap.SOAPFault fault;
private boolean isDetailAdded;
private Locale faultReasonLocale;
private boolean defaultsSet;
/** @param fault */
public SOAPFaultImpl(org.apache.axiom.soap.SOAPFault fault) {
- super((ElementImpl)fault);
- this.fault = fault;
+ super(fault);
}
void setDefaults() throws SOAPException {
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
setFaultCode(SOAP11Constants.QNAME_SENDER_FAULTCODE);
} else {
setFaultCode(SOAP12Constants.QNAME_SENDER_FAULTCODE);
@@ -84,7 +74,7 @@ public class SOAPFaultImpl extends SOAPB
void removeDefaults() {
if (defaultsSet) {
- SOAPFaultReason reason = this.fault.getReason();
+ SOAPFaultReason reason = this.omTarget.getReason();
if (reason != null) {
reason.detach();
}
@@ -121,19 +111,19 @@ public class SOAPFaultImpl extends SOAPB
// localName = faultCode.substring(faultCode.indexOf(":")+1);
// }
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
- soapFactory = (SOAP11Factory)this.target.getOMFactory();
- soapFaultCode = soapFactory.createSOAPFaultCode(fault);
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
+ soapFactory = (SOAPFactory)this.omTarget.getOMFactory();
+ soapFaultCode = soapFactory.createSOAPFaultCode(omTarget);
soapFaultCode.setText(faultCode);
- } else if (this.target.getOMFactory() instanceof SOAP12Factory) {
- soapFactory = (SOAP12Factory)this.target.getOMFactory();
- soapFaultCode = soapFactory.createSOAPFaultCode(fault);
+ } else if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP12Version.getSingleton()) {
+ soapFactory = (SOAPFactory)this.omTarget.getOMFactory();
+ soapFaultCode = soapFactory.createSOAPFaultCode(omTarget);
SOAPFaultValue soapFaultValue = soapFactory.createSOAPFaultValue(soapFaultCode);
soapFaultCode.setValue(soapFaultValue);
soapFaultValue.setText(faultCode);
}
- this.fault.setCode(soapFaultCode);
+ this.omTarget.setCode(soapFaultCode);
}
/**
@@ -143,11 +133,11 @@ public class SOAPFaultImpl extends SOAPB
* @see #setFaultCode(String) setFaultCode(java.lang.String)
*/
public String getFaultCode() {
- if (fault != null && fault.getCode() != null) {
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
- return fault.getCode().getText();
- } else if (this.target.getOMFactory() instanceof SOAP12Factory) {
- return fault.getCode().getValue().getText();
+ if (omTarget != null && omTarget.getCode() != null) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
+ return omTarget.getCode().getText();
+ } else if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP12Version.getSingleton()) {
+ return omTarget.getCode().getValue().getText();
} else {
return null;
}
@@ -167,29 +157,15 @@ public class SOAPFaultImpl extends SOAPB
* tree.
*/
public void setFaultActor(String faultActor) throws SOAPException {
+ if (this.omTarget.getRole() == null) {
+ SOAPFaultRole faultRoleImpl = ((SOAPFactory)this.omTarget.getOMFactory()).createSOAPFaultRole(
+ this.omTarget);
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
- if (this.fault.getRole() == null) {
- SOAP11FaultRoleImpl faultRoleImpl = new SOAP11FaultRoleImpl(
- this.fault, (SOAPFactory)this.target.getOMFactory());
-
- faultRoleImpl.setRoleValue(faultActor);
- this.fault.setRole(faultRoleImpl);
- } else {
- SOAPFaultRole role = this.fault.getRole();
- role.setRoleValue(faultActor);
- }
- } else if (this.target.getOMFactory() instanceof SOAP12Factory) {
- if (this.fault.getRole() == null) {
- SOAP12FaultRoleImpl faultRoleImpl = new SOAP12FaultRoleImpl(
- this.fault, (SOAPFactory)this.target.getOMFactory());
-
- faultRoleImpl.setRoleValue(faultActor);
- this.fault.setRole(faultRoleImpl);
- } else {
- SOAPFaultRole role = this.fault.getRole();
- role.setRoleValue(faultActor);
- }
+ faultRoleImpl.setRoleValue(faultActor);
+ this.omTarget.setRole(faultRoleImpl);
+ } else {
+ SOAPFaultRole role = this.omTarget.getRole();
+ role.setRoleValue(faultActor);
}
}
@@ -197,8 +173,8 @@ public class SOAPFaultImpl extends SOAPB
* @see javax.xml.soap.SOAPFault#getFaultActor()
*/
public String getFaultActor() {
- if (this.fault.getRole() != null) {
- return this.fault.getRole().getRoleValue();
+ if (this.omTarget.getRole() != null) {
+ return this.omTarget.getRole().getRoleValue();
}
return null;
}
@@ -212,9 +188,9 @@ public class SOAPFaultImpl extends SOAPB
* @see #getFaultString() getFaultString()
*/
public void setFaultString(String faultString) throws SOAPException {
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
setFaultString(faultString, null);
- } else if (this.target.getOMFactory() instanceof SOAP12Factory) {
+ } else if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP12Version.getSingleton()) {
setFaultString(faultString, Locale.getDefault());
}
}
@@ -224,13 +200,13 @@ public class SOAPFaultImpl extends SOAPB
*/
public String getFaultString() {
- if (this.fault.getNamespace().getNamespaceURI().equals(
+ if (this.omTarget.getNamespace().getNamespaceURI().equals(
SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI)) {
- return this.fault.getReason().getText();
+ return this.omTarget.getReason().getText();
} else {
- if (this.fault.getReason() != null && this.fault.getReason().getFirstSOAPText() != null)
+ if (this.omTarget.getReason() != null && this.omTarget.getReason().getFirstSOAPText() != null)
{
- return this.fault.getReason().getFirstSOAPText().getText();
+ return this.omTarget.getReason().getFirstSOAPText().getText();
}
}
return null;
@@ -240,7 +216,7 @@ public class SOAPFaultImpl extends SOAPB
* @see javax.xml.soap.SOAPFault#getDetail()
*/
public Detail getDetail() {
- return (Detail)toSAAJNode((org.w3c.dom.Node)fault.getDetail());
+ return (Detail)toSAAJNode((org.w3c.dom.Node)omTarget.getDetail());
}
@@ -282,16 +258,10 @@ public class SOAPFaultImpl extends SOAPB
}
SOAPFaultDetail omDetail;
- SOAPFactory factory = (SOAPFactory)this.target.getOMFactory();
- if (factory instanceof SOAP11Factory) {
- omDetail = new SOAP11FaultDetailImpl(this.fault,
- factory);
- } else {
- omDetail = new SOAP12FaultDetailImpl(this.fault,
- factory);
- }
+ SOAPFactory factory = (SOAPFactory)this.omTarget.getOMFactory();
+ omDetail = factory.createSOAPFaultDetail(this.omTarget);
Detail saajDetail = new DetailImpl(omDetail);
- ((NodeImpl)fault.getDetail()).setUserData(SAAJ_NODE, saajDetail, null);
+ ((Element)omTarget.getDetail()).setUserData(SAAJ_NODE, saajDetail, null);
isDetailAdded = true;
return saajDetail;
}
@@ -316,20 +286,19 @@ public class SOAPFaultImpl extends SOAPB
*/
public void setFaultString(String faultString, Locale locale) throws SOAPException {
- if (this.fault.getReason() != null) {
- SOAPFaultReason reason = this.fault.getReason();
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ if (this.omTarget.getReason() != null) {
+ SOAPFaultReason reason = this.omTarget.getReason();
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
reason.setText(faultString);
- } else if (this.target.getOMFactory() instanceof SOAP12Factory) {
+ } else if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP12Version.getSingleton()) {
addFaultReasonText(faultString, locale);
}
} else {
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
- SOAPFaultReason reason = new SOAP11FaultReasonImpl(this.fault,
- (SOAPFactory)this.target
- .getOMFactory());
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
+ SOAPFaultReason reason = ((SOAPFactory)this.omTarget
+ .getOMFactory()).createSOAPFaultReason(this.omTarget);
reason.setText(faultString);
- } else if (this.target.getOMFactory() instanceof SOAP12Factory) {
+ } else if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP12Version.getSingleton()) {
addFaultReasonText(faultString, locale);
}
}
@@ -349,9 +318,9 @@ public class SOAPFaultImpl extends SOAPB
* @since SAAJ 1.2
*/
public Locale getFaultStringLocale() {
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
return this.faultReasonLocale;
- } else if (this.target.getOMFactory() instanceof SOAP12Factory) {
+ } else if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP12Version.getSingleton()) {
Locale locale = null;
try {
if (getFaultReasonLocales().hasNext()) {
@@ -384,26 +353,26 @@ public class SOAPFaultImpl extends SOAPB
if (locale == null) {
throw new SOAPException("Received null for locale");
}
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
throw new UnsupportedOperationException("Not supported in SOAP 1.1");
- } else if (this.target.getOMFactory() instanceof SOAP12Factory) {
+ } else if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP12Version.getSingleton()) {
removeDefaults();
String existingReasonText = getFaultReasonText(locale);
if (existingReasonText == null) {
org.apache.axiom.soap.SOAPFactory soapFactory = null;
- soapFactory = (SOAP12Factory)this.target.getOMFactory();
- if (this.fault.getReason() == null) {
- SOAPFaultReason soapFaultReason = soapFactory.createSOAPFaultReason(this.fault);
- this.fault.setReason(soapFaultReason);
+ soapFactory = (SOAPFactory)this.omTarget.getOMFactory();
+ if (this.omTarget.getReason() == null) {
+ SOAPFaultReason soapFaultReason = soapFactory.createSOAPFaultReason(this.omTarget);
+ this.omTarget.setReason(soapFaultReason);
}
SOAPFaultText soapFaultText =
- soapFactory.createSOAPFaultText(this.fault.getReason());
+ soapFactory.createSOAPFaultText(this.omTarget.getReason());
soapFaultText.setText(text);
soapFaultText.setLang(locale.toString());
} else {
//update the text
- Iterator soapTextsItr = this.fault.getReason().getAllSoapTexts().iterator();
+ Iterator soapTextsItr = this.omTarget.getReason().getAllSoapTexts().iterator();
while (soapTextsItr.hasNext()) {
SOAPFaultText soapFaultText = (SOAPFaultText)soapTextsItr.next();
if (soapFaultText.getLang().equals(locale.toString())) {
@@ -430,36 +399,34 @@ public class SOAPFaultImpl extends SOAPB
*/
public void appendFaultSubcode(QName subcode) throws SOAPException {
- org.apache.axiom.soap.SOAPFactory soapFactory = null;
+ SOAPFactory soapFactory = (SOAPFactory)this.omTarget.getOMFactory();
SOAPFaultSubCode soapFaultSubCode = null;
if (subcode.getNamespaceURI() == null || subcode.getNamespaceURI().trim().length() == 0) {
throw new SOAPException("Unqualified QName object : " + subcode);
}
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
throw new UnsupportedOperationException();
- } else if (this.target.getOMFactory() instanceof SOAP12Factory) {
- soapFactory = DOOMAbstractFactory.getSOAP12Factory();
}
- if (this.fault.getCode() == null) {
- soapFactory.createSOAPFaultCode(this.fault);
+ if (this.omTarget.getCode() == null) {
+ soapFactory.createSOAPFaultCode(this.omTarget);
//if SOAPFault is null, there cannot be a subcode.
//Hence should create one
- soapFaultSubCode = soapFactory.createSOAPFaultSubCode(this.fault.getCode());
- } else if (this.fault.getCode().getSubCode() != null) {
+ soapFaultSubCode = soapFactory.createSOAPFaultSubCode(this.omTarget.getCode());
+ } else if (this.omTarget.getCode().getSubCode() != null) {
//find the last subcode.parent of the new subcode should be the this last subcode
soapFaultSubCode = soapFactory.createSOAPFaultSubCode(
- getLastSubCode(this.fault.getCode().getSubCode()));
+ getLastSubCode(this.omTarget.getCode().getSubCode()));
} else {
//FaultCode is there, but no FaultSubCode
- soapFaultSubCode = soapFactory.createSOAPFaultSubCode(this.fault.getCode());
+ soapFaultSubCode = soapFactory.createSOAPFaultSubCode(this.omTarget.getCode());
}
if (soapFaultSubCode != null) {
- SOAPFaultValueImpl soapFaultValueimpl =
- new SOAP12FaultValueImpl(soapFaultSubCode, soapFactory);
+ SOAPFaultValue soapFaultValueimpl =
+ soapFactory.createSOAPFaultValue(soapFaultSubCode);
soapFaultValueimpl.setText(subcode.getPrefix() + ":" + subcode.getLocalPart());
soapFaultValueimpl.declareNamespace(subcode.getNamespaceURI(), subcode.getPrefix());
}
@@ -478,9 +445,9 @@ public class SOAPFaultImpl extends SOAPB
* <p/>
*/
public QName getFaultCodeAsQName() {
- SOAPFaultCode soapFaultCode = this.fault.getCode();
+ SOAPFaultCode soapFaultCode = this.omTarget.getCode();
if (soapFaultCode != null) {
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
return soapFaultCode.getTextAsQName();
} else {
return soapFaultCode.getValue().getTextAsQName();
@@ -498,12 +465,12 @@ public class SOAPFaultImpl extends SOAPB
* - if this message does not support the SOAP 1.2 concept of Fault Node.
*/
public String getFaultNode() {
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
throw new UnsupportedOperationException("Message does not support the " +
"SOAP 1.2 concept of Fault Node");
} else {
- if (fault != null && fault.getNode() != null && fault.getNode().getText() != null) {
- return fault.getNode().getText();
+ if (omTarget != null && omTarget.getNode() != null && omTarget.getNode().getText() != null) {
+ return omTarget.getNode().getText();
}
}
return null;
@@ -523,12 +490,12 @@ public class SOAPFaultImpl extends SOAPB
* @since SAAJ 1.3
*/
public Iterator getFaultReasonLocales() throws SOAPException {
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
throw new UnsupportedOperationException("Message does not support the " +
"SOAP 1.2 concept of Fault Reason");
} else {
ArrayList faultReasonLocales = new ArrayList();
- List soapTextList = this.fault.getReason().getAllSoapTexts();
+ List soapTextList = this.omTarget.getReason().getAllSoapTexts();
if (soapTextList != null) {
Iterator faultReasons = soapTextList.iterator();
while (faultReasons.hasNext()) {
@@ -563,12 +530,12 @@ public class SOAPFaultImpl extends SOAPB
* @since SAAJ 1.3
*/
public String getFaultReasonText(Locale locale) throws SOAPException {
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
throw new UnsupportedOperationException("Message does not support the " +
"SOAP 1.2 concept of Fault Reason");
} else {
Iterator soapTextsItr = null;
- SOAPFaultReason soapFaultReason = this.fault.getReason();
+ SOAPFaultReason soapFaultReason = this.omTarget.getReason();
if (soapFaultReason != null) {
List soapTexts = soapFaultReason.getAllSoapTexts();
if (soapTexts != null) {
@@ -595,11 +562,11 @@ public class SOAPFaultImpl extends SOAPB
*/
public Iterator getFaultReasonTexts() throws SOAPException {
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
throw new UnsupportedOperationException();
}
- Iterator soapTextsItr = this.fault.getReason().getAllSoapTexts().iterator();
+ Iterator soapTextsItr = this.omTarget.getReason().getAllSoapTexts().iterator();
ArrayList reasonTexts = new ArrayList();
while (soapTextsItr.hasNext()) {
SOAPFaultText soapFaultText = (SOAPFaultText)soapTextsItr.next();
@@ -618,12 +585,12 @@ public class SOAPFaultImpl extends SOAPB
* @since SAAJ 1.3
*/
public String getFaultRole() {
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
throw new UnsupportedOperationException("Message does not support the " +
"SOAP 1.2 concept of Fault Reason");
} else {
- if (this.fault.getRole() != null) {
- return this.fault.getRole().getText();
+ if (this.omTarget.getRole() != null) {
+ return this.omTarget.getRole().getText();
} else {
return null;
}
@@ -640,11 +607,11 @@ public class SOAPFaultImpl extends SOAPB
* - if this message does not support the SOAP 1.2 concept of Subcode.
*/
public Iterator getFaultSubcodes() {
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
throw new UnsupportedOperationException();
}
ArrayList faultSubcodes = new ArrayList();
- SOAPFaultSubCode subCodeElement = this.fault.getCode().getSubCode();
+ SOAPFaultSubCode subCodeElement = this.omTarget.getCode().getSubCode();
while (subCodeElement != null) {
QName qname = subCodeElement.getValue().getTextAsQName();
faultSubcodes.add(qname);
@@ -655,7 +622,7 @@ public class SOAPFaultImpl extends SOAPB
/** Returns true if this SOAPFault has a Detail subelement and false otherwise. */
public boolean hasDetail() {
- if (this.fault.getDetail() != null) {
+ if (this.omTarget.getDetail() != null) {
return true;
} else {
return false;
@@ -671,10 +638,10 @@ public class SOAPFaultImpl extends SOAPB
* - if this message does not support the SOAP 1.2 concept of Subcode.
*/
public void removeAllFaultSubcodes() {
- if (target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
throw new UnsupportedOperationException();
} else {
- fault.getCode().getSubCode().detach();
+ omTarget.getCode().getSubCode().detach();
}
}
@@ -697,31 +664,31 @@ public class SOAPFaultImpl extends SOAPB
}
org.apache.axiom.soap.SOAPFactory soapFactory = null;
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
- soapFactory = (SOAPFactory)this.target.getOMFactory();
- } else if (this.target.getOMFactory() instanceof SOAP12Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
+ soapFactory = (SOAPFactory)this.omTarget.getOMFactory();
+ } else if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP12Version.getSingleton()) {
if (!(qname.getNamespaceURI()
.equals(SOAPConstants.URI_NS_SOAP_1_2_ENVELOPE))) {
throw new SOAPException("Incorrect URI"
+ qname.getNamespaceURI());
}
- soapFactory = (SOAPFactory)this.target.getOMFactory();
+ soapFactory = (SOAPFactory)this.omTarget.getOMFactory();
} else {
throw new SOAPException("Invalid SOAP version");
}
- SOAPFaultCode soapFaultCode = soapFactory.createSOAPFaultCode(this.fault);
+ SOAPFaultCode soapFaultCode = soapFactory.createSOAPFaultCode(this.omTarget);
String prefix = ((qname.getPrefix() != null) && !qname.getPrefix()
- .equals("")) ? qname.getPrefix() : this.fault.getQName()
+ .equals("")) ? qname.getPrefix() : this.omTarget.getQName()
.getPrefix();
- OMFactory factory = target.getOMFactory();
- if (factory instanceof SOAP11Factory) {
+ OMFactory factory = omTarget.getOMFactory();
+ if (((SOAPFactory)factory).getSOAPVersion() == SOAP11Version.getSingleton()) {
soapFaultCode.setText(prefix + ":" + qname.getLocalPart());
OMNamespace omNamespace = factory.createOMNamespace(qname.getNamespaceURI(),
qname.getPrefix());
soapFaultCode.declareNamespace(omNamespace);
- } else if (factory instanceof SOAP12Factory) {
+ } else if (((SOAPFactory)factory).getSOAPVersion() == SOAP12Version.getSingleton()) {
SOAPFaultValue soapFaultValue = soapFactory.createSOAPFaultValue(soapFaultCode);
// don't just use the default prefix, use the passed one or the parent's
soapFaultValue.setText(prefix + ":" + qname.getLocalPart());
@@ -731,7 +698,7 @@ public class SOAPFaultImpl extends SOAPB
soapFaultCode.setValue(soapFaultValue);
}
- this.fault.setCode(soapFaultCode);
+ this.omTarget.setCode(soapFaultCode);
}
/**
@@ -745,16 +712,14 @@ public class SOAPFaultImpl extends SOAPB
*/
public void setFaultNode(String s) throws SOAPException {
- org.apache.axiom.soap.SOAPFactory soapFactory = null;
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ SOAPFactory soapFactory = (SOAPFactory)this.omTarget.getOMFactory();
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
throw new UnsupportedOperationException("message does not support " +
"the SOAP 1.2 concept of Fault Node");
- } else if (this.target.getOMFactory() instanceof SOAP12Factory) {
- soapFactory = DOOMAbstractFactory.getSOAP12Factory();
}
- SOAPFaultNode soapFaultNode = soapFactory.createSOAPFaultNode(this.fault);
+ SOAPFaultNode soapFaultNode = soapFactory.createSOAPFaultNode(this.omTarget);
soapFaultNode.setText(s);
- this.fault.setNode(soapFaultNode);
+ this.omTarget.setNode(soapFaultNode);
}
/**
@@ -767,25 +732,23 @@ public class SOAPFaultImpl extends SOAPB
* support the SOAP 1.2 concept of Fault Role.
*/
public void setFaultRole(String uri) throws SOAPException {
- org.apache.axiom.soap.SOAPFactory soapFactory = null;
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ SOAPFactory soapFactory = (SOAPFactory)this.omTarget.getOMFactory();
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
throw new UnsupportedOperationException("message does not support the " +
"SOAP 1.2 concept of Fault Role");
- } else if (this.target.getOMFactory() instanceof SOAP12Factory) {
- soapFactory = DOOMAbstractFactory.getSOAP12Factory();
}
- SOAPFaultRole soapFaultRole = soapFactory.createSOAPFaultRole(this.fault);
+ SOAPFaultRole soapFaultRole = soapFactory.createSOAPFaultRole(this.omTarget);
soapFaultRole.setRoleValue(uri);
- this.fault.setRole(soapFaultRole);
+ this.omTarget.setRole(soapFaultRole);
}
public Iterator getChildElements(Name name) {
QName qName = new QName(name.getURI(), name.getLocalName());
- return getChildren(target.getChildrenWithName(qName));
+ return getChildren(omTarget.getChildrenWithName(qName));
}
public Iterator getChildElements() {
- return getChildren(target.getChildren());
+ return getChildren(omTarget.getChildren());
}
private Iterator getChildren(Iterator childIter) {
@@ -795,8 +758,8 @@ public class SOAPFaultImpl extends SOAPB
Node saajNode = toSAAJNode(domNode);
if (!(saajNode instanceof SOAPFaultElement)) {
// silently replace node, as per saaj 1.2 spec
- SOAPFaultElement bodyEle = new SOAPFaultElementImpl((ElementImpl)domNode);
- ((NodeImpl)domNode).setUserData(SAAJ_NODE, bodyEle, null);
+ SOAPFaultElement bodyEle = new SOAPFaultElementImpl<OMElement>((OMElement)domNode);
+ domNode.setUserData(SAAJ_NODE, bodyEle, null);
childElements.add(bodyEle);
} else {
childElements.add(saajNode);
Modified: axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPHeaderElementImpl.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPHeaderElementImpl.java?rev=1348340&r1=1348339&r2=1348340&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPHeaderElementImpl.java (original)
+++ axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPHeaderElementImpl.java Sat Jun 9 09:18:25 2012
@@ -19,23 +19,20 @@
package org.apache.axis2.saaj;
-import org.apache.axiom.om.impl.dom.ElementImpl;
+import org.apache.axiom.soap.SOAP11Version;
+import org.apache.axiom.soap.SOAPFactory;
import org.apache.axiom.soap.SOAPHeaderBlock;
-import org.apache.axiom.soap.impl.dom.soap11.SOAP11Factory;
import javax.xml.soap.SOAPElement;
import javax.xml.soap.SOAPException;
import javax.xml.soap.SOAPHeader;
import javax.xml.soap.SOAPHeaderElement;
-public class SOAPHeaderElementImpl extends SOAPElementImpl implements SOAPHeaderElement {
-
- private SOAPHeaderBlock headerElem;
+public class SOAPHeaderElementImpl extends SOAPElementImpl<SOAPHeaderBlock> implements SOAPHeaderElement {
/** @param element */
public SOAPHeaderElementImpl(SOAPHeaderBlock element) {
- super((ElementImpl)element);
- this.headerElem = element;
+ super(element);
}
/**
@@ -48,7 +45,7 @@ public class SOAPHeaderElementImpl exten
* @see #getActor() getActor()
*/
public void setActor(String actorURI) {
- this.headerElem.setRole(actorURI);
+ this.omTarget.setRole(actorURI);
}
/**
@@ -58,7 +55,7 @@ public class SOAPHeaderElementImpl exten
* @see #setActor(String) setActor(java.lang.String)
*/
public String getActor() {
- return this.headerElem.getRole();
+ return this.omTarget.getRole();
}
/**
@@ -77,7 +74,7 @@ public class SOAPHeaderElementImpl exten
* @see #getMustUnderstand() getMustUnderstand()
*/
public void setMustUnderstand(boolean mustUnderstand) {
- this.headerElem.setMustUnderstand(mustUnderstand);
+ this.omTarget.setMustUnderstand(mustUnderstand);
}
/**
@@ -88,7 +85,7 @@ public class SOAPHeaderElementImpl exten
* <CODE>SOAPHeaderElement</CODE> object is turned on; <CODE>false</CODE> otherwise
*/
public boolean getMustUnderstand() {
- return this.headerElem.getMustUnderstand();
+ return this.omTarget.getMustUnderstand();
}
/**
@@ -99,18 +96,18 @@ public class SOAPHeaderElementImpl exten
* - if this message does not support the SOAP 1.2 concept of Fault Role.
*/
public void setRole(String uri) throws SOAPException {
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
throw new UnsupportedOperationException();
} else {
- this.headerElem.setRole(uri);
+ this.omTarget.setRole(uri);
}
}
public String getRole() {
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
throw new UnsupportedOperationException();
} else {
- return this.headerElem.getRole();
+ return this.omTarget.getRole();
}
}
@@ -128,18 +125,18 @@ public class SOAPHeaderElementImpl exten
* support the SOAP 1.2 concept of Relay attribute.
*/
public void setRelay(boolean flag) throws SOAPException {
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
throw new UnsupportedOperationException();
} else {
- this.headerElem.setRelay(flag);
+ this.omTarget.setRelay(flag);
}
}
public boolean getRelay() {
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
throw new UnsupportedOperationException();
} else {
- return this.headerElem.getRelay();
+ return this.omTarget.getRelay();
}
}
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=1348340&r1=1348339&r2=1348340&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 Sat Jun 9 09:18:25 2012
@@ -20,18 +20,12 @@
package org.apache.axis2.saaj;
import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.OMFactory;
import org.apache.axiom.om.OMNamespace;
import org.apache.axiom.om.OMNode;
-import org.apache.axiom.om.impl.dom.ElementImpl;
-import org.apache.axiom.om.impl.dom.NamespaceImpl;
-import org.apache.axiom.om.impl.dom.NodeImpl;
+import org.apache.axiom.soap.SOAP11Version;
+import org.apache.axiom.soap.SOAP12Version;
import org.apache.axiom.soap.SOAPFactory;
import org.apache.axiom.soap.SOAPHeaderBlock;
-import org.apache.axiom.soap.impl.dom.soap11.SOAP11Factory;
-import org.apache.axiom.soap.impl.dom.soap11.SOAP11HeaderBlockImpl;
-import org.apache.axiom.soap.impl.dom.soap12.SOAP12Factory;
-import org.apache.axiom.soap.impl.dom.soap12.SOAP12HeaderBlockImpl;
import org.apache.axis2.namespace.Constants;
import org.w3c.dom.Element;
@@ -46,9 +40,7 @@ import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
-public class SOAPHeaderImpl extends SOAPElementImpl implements SOAPHeader {
-
- private org.apache.axiom.soap.SOAPHeader omSOAPHeader;
+public class SOAPHeaderImpl extends SOAPElementImpl<org.apache.axiom.soap.SOAPHeader> implements SOAPHeader {
/**
* Constructor
@@ -56,8 +48,7 @@ public class SOAPHeaderImpl extends SOAP
* @param header
*/
public SOAPHeaderImpl(org.apache.axiom.soap.SOAPHeader header) {
- super((ElementImpl)header);
- omSOAPHeader = header;
+ super(header);
}
/* (non-Javadoc)
@@ -84,15 +75,8 @@ public class SOAPHeaderImpl extends SOAP
*/
public SOAPElement addChildElement(String localName, String prefix, String uri)
throws SOAPException {
- OMNamespace ns = new NamespaceImpl(uri, prefix);
- SOAPHeaderBlock headerBlock = null;
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
- headerBlock = new SOAP11HeaderBlockImpl(localName, ns, omSOAPHeader,
- (SOAPFactory)this.target.getOMFactory());
- } else {
- headerBlock = new SOAP12HeaderBlockImpl(localName, ns, omSOAPHeader,
- (SOAPFactory)this.target.getOMFactory());
- }
+ OMNamespace ns = omTarget.getOMFactory().createOMNamespace(uri, prefix);
+ SOAPHeaderBlock headerBlock = ((SOAPFactory)this.omTarget.getOMFactory()).createSOAPHeaderBlock(localName, ns, omTarget);
SOAPHeaderElementImpl soapHeaderElement = new SOAPHeaderElementImpl(headerBlock);
target.setUserData(SAAJ_NODE, this, null);
soapHeaderElement.target.setUserData(SAAJ_NODE, soapHeaderElement, null);
@@ -111,19 +95,10 @@ public class SOAPHeaderImpl extends SOAP
* @see javax.xml.soap.SOAPElement#addChildElement(javax.xml.soap.SOAPElement)
*/
public SOAPElement addChildElement(SOAPElement soapElement) throws SOAPException {
- OMNamespace ns = new NamespaceImpl(soapElement.getNamespaceURI(),
+ OMNamespace ns = omTarget.getOMFactory().createOMNamespace(soapElement.getNamespaceURI(),
soapElement.getPrefix());
- SOAPHeaderBlock headerBlock = null;
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
- headerBlock = new SOAP11HeaderBlockImpl(soapElement.getLocalName(), ns,
- omSOAPHeader,
- (SOAPFactory)this.target.getOMFactory());
- } else {
- headerBlock = new SOAP12HeaderBlockImpl(soapElement.getLocalName(), ns,
- omSOAPHeader,
- (SOAPFactory)this.target.getOMFactory());
-
- }
+ SOAPHeaderBlock headerBlock = ((SOAPFactory)this.omTarget.getOMFactory()).createSOAPHeaderBlock(
+ soapElement.getLocalName(), ns, omTarget);
SOAPHeaderElementImpl soapHeaderElement = new SOAPHeaderElementImpl(headerBlock);
target.setUserData(SAAJ_NODE, this, null);
soapHeaderElement.target.setUserData(SAAJ_NODE, soapHeaderElement, null);
@@ -132,20 +107,11 @@ public class SOAPHeaderImpl extends SOAP
}
@Override
- protected Element appendElement(ElementImpl child) throws SOAPException {
- OMNamespace ns = new NamespaceImpl(child.getNamespaceURI(),
+ protected Element appendElement(Element child) throws SOAPException {
+ OMNamespace ns = omTarget.getOMFactory().createOMNamespace(child.getNamespaceURI(),
child.getPrefix());
- SOAPHeaderBlock headerBlock = null;
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
- headerBlock = new SOAP11HeaderBlockImpl(child.getLocalName(), ns,
- omSOAPHeader,
- (SOAPFactory)this.target.getOMFactory());
- } else {
- headerBlock = new SOAP12HeaderBlockImpl(child.getLocalName(), ns,
- omSOAPHeader,
- (SOAPFactory)this.target.getOMFactory());
-
- }
+ SOAPHeaderBlock headerBlock = ((SOAPFactory)this.omTarget.getOMFactory()).createSOAPHeaderBlock(
+ child.getLocalName(), ns, omTarget);
target.setUserData(SAAJ_NODE, this, null);
@@ -174,16 +140,10 @@ public class SOAPHeaderImpl extends SOAP
"a namespace.");
}
String prefix = name.getPrefix() == null ? "" : name.getPrefix();
- OMNamespace ns = new NamespaceImpl(name.getURI(), prefix);
+ OMNamespace ns = omTarget.getOMFactory().createOMNamespace(name.getURI(), prefix);
- SOAPHeaderBlock headerBlock = null;
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
- headerBlock = new SOAP11HeaderBlockImpl(name.getLocalName(), ns, omSOAPHeader,
- (SOAPFactory)this.target.getOMFactory());
- } else {
- headerBlock = new SOAP12HeaderBlockImpl(name.getLocalName(), ns, omSOAPHeader,
- (SOAPFactory)this.target.getOMFactory());
- }
+ SOAPHeaderBlock headerBlock = ((SOAPFactory)this.omTarget.getOMFactory()).createSOAPHeaderBlock(
+ name.getLocalName(), ns, omTarget);
SOAPHeaderElementImpl soapHeaderElement = new SOAPHeaderElementImpl(headerBlock);
target.setUserData(SAAJ_NODE, this, null);
@@ -207,8 +167,8 @@ public class SOAPHeaderImpl extends SOAP
*/
public Iterator examineHeaderElements(String actor) {
Collection elements = new ArrayList();
- for (Iterator iterator = omSOAPHeader.examineHeaderBlocks(actor); iterator.hasNext();) {
- elements.add(toSAAJNode((NodeImpl)iterator.next()));
+ for (Iterator iterator = omTarget.examineHeaderBlocks(actor); iterator.hasNext();) {
+ elements.add(toSAAJNode((org.w3c.dom.Node)iterator.next()));
}
return elements.iterator();
}
@@ -228,8 +188,8 @@ public class SOAPHeaderImpl extends SOAP
*/
public Iterator extractHeaderElements(String actor) {
Collection elements = new ArrayList();
- for (Iterator iterator = omSOAPHeader.extractHeaderBlocks(actor); iterator.hasNext();) {
- elements.add(toSAAJNode((NodeImpl)iterator.next()));
+ for (Iterator iterator = omTarget.extractHeaderBlocks(actor); iterator.hasNext();) {
+ elements.add(toSAAJNode((org.w3c.dom.Node)iterator.next()));
}
return elements.iterator();
}
@@ -245,9 +205,9 @@ public class SOAPHeaderImpl extends SOAP
*/
public Iterator examineMustUnderstandHeaderElements(String actor) {
Collection elements = new ArrayList();
- for (Iterator iterator = omSOAPHeader.examineMustUnderstandHeaderBlocks(actor);
+ for (Iterator iterator = omTarget.examineMustUnderstandHeaderBlocks(actor);
iterator.hasNext();) {
- elements.add(toSAAJNode((NodeImpl)iterator.next()));
+ elements.add(toSAAJNode((org.w3c.dom.Node)iterator.next()));
}
return elements.iterator();
}
@@ -261,8 +221,8 @@ public class SOAPHeaderImpl extends SOAP
*/
public Iterator examineAllHeaderElements() {
Collection elements = new ArrayList();
- for (Iterator iterator = omSOAPHeader.examineAllHeaderBlocks(); iterator.hasNext();) {
- elements.add(toSAAJNode((NodeImpl)iterator.next()));
+ for (Iterator iterator = omTarget.examineAllHeaderBlocks(); iterator.hasNext();) {
+ elements.add(toSAAJNode((org.w3c.dom.Node)iterator.next()));
}
return elements.iterator();
}
@@ -276,8 +236,8 @@ public class SOAPHeaderImpl extends SOAP
*/
public Iterator extractAllHeaderElements() {
Collection elements = new ArrayList();
- for (Iterator iterator = omSOAPHeader.extractAllHeaderBlocks(); iterator.hasNext();) {
- elements.add(toSAAJNode((NodeImpl)iterator.next()));
+ for (Iterator iterator = omTarget.extractAllHeaderBlocks(); iterator.hasNext();) {
+ elements.add(toSAAJNode((org.w3c.dom.Node)iterator.next()));
}
return elements.iterator();
}
@@ -301,12 +261,12 @@ public class SOAPHeaderImpl extends SOAP
public SOAPHeaderElement addNotUnderstoodHeaderElement(QName qname) throws SOAPException {
SOAPHeaderBlock soapHeaderBlock = null;
- OMNamespace ns = new NamespaceImpl(qname.getNamespaceURI(), qname.getPrefix());
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ OMNamespace ns = omTarget.getOMFactory().createOMNamespace(qname.getNamespaceURI(), qname.getPrefix());
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
throw new UnsupportedOperationException();
} else {
- soapHeaderBlock = this.omSOAPHeader.addHeaderBlock(
- Constants.ELEM_NOTUNDERSTOOD, this.target.getNamespace());
+ soapHeaderBlock = this.omTarget.addHeaderBlock(
+ Constants.ELEM_NOTUNDERSTOOD, this.omTarget.getNamespace());
soapHeaderBlock.addAttribute(qname.getLocalPart(), qname.getPrefix(), ns);
}
SOAPHeaderElementImpl soapHeaderElementImpl = new SOAPHeaderElementImpl(soapHeaderBlock);
@@ -323,8 +283,8 @@ public class SOAPHeaderImpl extends SOAP
* @throws SOAPException - if a SOAP error occurs.
*/
public SOAPHeaderElement addUpgradeHeaderElement(Iterator iterator) throws SOAPException {
- SOAPHeaderBlock upgrade = this.omSOAPHeader.addHeaderBlock(
- Constants.ELEM_UPGRADE, this.target.getNamespace());
+ SOAPHeaderBlock upgrade = this.omTarget.addHeaderBlock(
+ Constants.ELEM_UPGRADE, this.omTarget.getNamespace());
int index = 0;
String prefix = "ns";
@@ -332,10 +292,10 @@ public class SOAPHeaderImpl extends SOAP
index++;
String supported = (String)iterator.next();
- OMNamespace namespace = new NamespaceImpl(supported, prefix + index);
+ OMNamespace namespace = omTarget.getOMFactory().createOMNamespace(supported, prefix + index);
OMElement supportedEnvelop =
- target.getOMFactory().createOMElement(Constants.ELEM_SUPPORTEDENVELOPE,
+ omTarget.getOMFactory().createOMElement(Constants.ELEM_SUPPORTEDENVELOPE,
namespace);
supportedEnvelop.addAttribute(Constants.ATTR_QNAME, prefix + index + ":"
+ Constants.ELEM_ENVELOPE, null);
@@ -367,9 +327,9 @@ public class SOAPHeaderImpl extends SOAP
}
public SOAPElement addTextNode(String text) throws SOAPException {
- if (this.target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
return super.addTextNode(text);
- } else if (this.target.getOMFactory() instanceof SOAP12Factory) {
+ } else if (((SOAPFactory)this.omTarget.getOMFactory()).getSOAPVersion() == SOAP12Version.getSingleton()) {
throw new SOAPException("Cannot add text node to SOAPHeader");
} else {
return null;
@@ -378,11 +338,11 @@ public class SOAPHeaderImpl extends SOAP
public Iterator getChildElements(Name name) {
QName qName = new QName(name.getURI(), name.getLocalName());
- return getChildren(target.getChildrenWithName(qName));
+ return getChildren(omTarget.getChildrenWithName(qName));
}
public Iterator getChildElements() {
- return getChildren(target.getChildren());
+ return getChildren(omTarget.getChildren());
}
private Iterator getChildren(Iterator childIter) {
@@ -395,7 +355,7 @@ public class SOAPHeaderImpl extends SOAP
} else if (!(saajNode instanceof SOAPHeaderElement)) {
// silently replace node, as per saaj 1.2 spec
SOAPHeaderElement headerEle = new SOAPHeaderElementImpl((SOAPHeaderBlock)domNode);
- ((NodeImpl)domNode).setUserData(SAAJ_NODE, headerEle, null);
+ domNode.setUserData(SAAJ_NODE, headerEle, null);
childElements.add(headerEle);
} else {
childElements.add(saajNode);
@@ -409,7 +369,7 @@ public class SOAPHeaderImpl extends SOAP
}
public OMNode detach() {
- OMNode omNode = omSOAPHeader.detach();
+ OMNode omNode = omTarget.detach();
parentElement = null;
return omNode;
}
Modified: axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPMessageImpl.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPMessageImpl.java?rev=1348340&r1=1348339&r2=1348340&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPMessageImpl.java (original)
+++ axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPMessageImpl.java Sat Jun 9 09:18:25 2012
@@ -23,9 +23,10 @@ import org.apache.axiom.attachments.Atta
import org.apache.axiom.om.OMException;
import org.apache.axiom.om.OMOutputFormat;
import org.apache.axiom.om.impl.OMMultipartWriter;
+import org.apache.axiom.soap.SOAP11Version;
+import org.apache.axiom.soap.SOAP12Version;
import org.apache.axiom.soap.SOAPEnvelope;
-import org.apache.axiom.soap.impl.dom.soap11.SOAP11Factory;
-import org.apache.axiom.soap.impl.dom.soap12.SOAP12Factory;
+import org.apache.axiom.soap.SOAPFactory;
import org.apache.axiom.util.UIDGenerator;
import org.apache.axis2.saaj.util.SAAJUtil;
import org.apache.axis2.transport.http.HTTPConstants;
@@ -62,9 +63,9 @@ public class SOAPMessageImpl extends SOA
public SOAPMessageImpl(SOAPEnvelopeImpl soapEnvelope) {
this.mimeHeaders = new MimeHeaders();
- if (soapEnvelope.target.getOMFactory() instanceof SOAP11Factory) {
+ if (((SOAPFactory)soapEnvelope.omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton()) {
this.mimeHeaders.addHeader("content-type", HTTPConstants.MEDIA_TYPE_TEXT_XML);
- } else if (soapEnvelope.target.getOMFactory() instanceof SOAP12Factory) {
+ } else if (((SOAPFactory)soapEnvelope.omTarget.getOMFactory()).getSOAPVersion() == SOAP12Version.getSingleton()) {
this.mimeHeaders.addHeader("content-type",
HTTPConstants.MEDIA_TYPE_APPLICATION_SOAP_XML);
}
@@ -377,7 +378,7 @@ public class SOAPMessageImpl extends SOA
format.setIgnoreXMLDeclaration(true);
}
- SOAPEnvelope envelope = ((SOAPEnvelopeImpl) soapPart.getEnvelope()).getOMEnvelope();
+ SOAPEnvelope envelope = ((SOAPEnvelopeImpl) soapPart.getEnvelope()).getOMTarget();
if (attachmentParts.isEmpty()) {
envelope.serialize(out, format);
} else {
@@ -400,7 +401,7 @@ public class SOAPMessageImpl extends SOA
}
format.setRootContentId(rootContentId);
- format.setSOAP11(((SOAPEnvelopeImpl) soapPart.getEnvelope()).target.getOMFactory() instanceof SOAP11Factory);
+ format.setSOAP11(((SOAPFactory)((SOAPEnvelopeImpl) soapPart.getEnvelope()).omTarget.getOMFactory()).getSOAPVersion() == SOAP11Version.getSingleton());
//Double save the content-type in case anything is updated
mimeHeaders.setHeader(HTTPConstants.HEADER_CONTENT_TYPE, contentType.toString());
@@ -612,7 +613,7 @@ public class SOAPMessageImpl extends SOA
}
private String getBaseType() throws SOAPException {
- boolean isSOAP12 = ((SOAPEnvelopeImpl) soapPart.getEnvelope()).target.getOMFactory() instanceof SOAP12Factory;
+ boolean isSOAP12 = ((SOAPFactory)((SOAPEnvelopeImpl) soapPart.getEnvelope()).omTarget.getOMFactory()).getSOAPVersion() == SOAP12Version.getSingleton();
return isSOAP12 ? HTTPConstants.MEDIA_TYPE_APPLICATION_SOAP_XML : HTTPConstants.MEDIA_TYPE_TEXT_XML;
}
Modified: axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPPartImpl.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPPartImpl.java?rev=1348340&r1=1348339&r2=1348340&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPPartImpl.java (original)
+++ axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/SOAPPartImpl.java Sat Jun 9 09:18:25 2012
@@ -20,6 +20,8 @@
package org.apache.axis2.saaj;
import org.apache.axiom.attachments.Attachments;
+import org.apache.axiom.om.OMAbstractFactory;
+import org.apache.axiom.om.OMMetaFactory;
import org.apache.axiom.om.impl.MTOMConstants;
import org.apache.axiom.om.util.StAXUtils;
import org.apache.axiom.soap.SOAP11Constants;
@@ -27,8 +29,6 @@ import org.apache.axiom.soap.SOAP12Const
import org.apache.axiom.soap.SOAPFactory;
import org.apache.axiom.soap.impl.builder.MTOMStAXSOAPModelBuilder;
import org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder;
-import org.apache.axiom.soap.impl.dom.soap11.SOAP11Factory;
-import org.apache.axiom.soap.impl.dom.soap12.SOAP12Factory;
import org.apache.axis2.saaj.util.IDGenerator;
import org.apache.axis2.saaj.util.SAAJUtil;
import org.apache.axis2.transport.http.HTTPConstants;
@@ -138,11 +138,12 @@ public class SOAPPartImpl extends SOAPPa
String charset;
boolean isMTOM;
String soapEnvelopeNamespaceURI;
+ OMMetaFactory metaFactory = OMAbstractFactory.getMetaFactory(OMAbstractFactory.FEATURE_DOM);
SOAPFactory soapFactory;
if (contentType == null) {
charset = null;
isMTOM = false;
- soapFactory = new SOAP11Factory();
+ soapFactory = metaFactory.getSOAP11Factory();
soapEnvelopeNamespaceURI = null;
} else {
String baseType = contentType.getBaseType().toLowerCase();
@@ -162,10 +163,10 @@ public class SOAPPartImpl extends SOAPPa
if (soapContentType.equals(HTTPConstants.MEDIA_TYPE_TEXT_XML)) {
soapEnvelopeNamespaceURI = SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI;
- soapFactory = new SOAP11Factory();
+ soapFactory = metaFactory.getSOAP11Factory();
} else if (soapContentType.equals(HTTPConstants.MEDIA_TYPE_APPLICATION_SOAP_XML)) {
soapEnvelopeNamespaceURI = SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI;
- soapFactory = new SOAP12Factory();
+ soapFactory = metaFactory.getSOAP12Factory();
} else {
throw new SOAPException("Unrecognized content type '" + soapContentType + "'");
}
@@ -198,9 +199,8 @@ public class SOAPPartImpl extends SOAPPa
try {
org.apache.axiom.soap.SOAPEnvelope soapEnvelope = builder.getSOAPEnvelope();
- envelope = new SOAPEnvelopeImpl(
- (org.apache.axiom.soap.impl.dom.SOAPEnvelopeImpl)soapEnvelope);
- envelope.target.build();
+ envelope = new SOAPEnvelopeImpl(soapEnvelope);
+ envelope.omTarget.build();
this.document = envelope.getOwnerDocument();
envelope.setSOAPPartParent(this);
} catch (Exception e) {
@@ -348,21 +348,12 @@ public class SOAPPartImpl extends SOAPPa
reader = inputFactory.createXMLStreamReader(is);
}
- StAXSOAPModelBuilder builder1 = null;
- if (this.envelope.target.getOMFactory() instanceof SOAP11Factory) {
- builder1 = new StAXSOAPModelBuilder(reader,
- (SOAP11Factory)this.envelope.target
- .getOMFactory(), null);
- } else if (this.envelope.target.getOMFactory() instanceof SOAP12Factory) {
- builder1 = new StAXSOAPModelBuilder(reader,
- (SOAP12Factory)this.envelope.target
- .getOMFactory(), null);
- }
+ StAXSOAPModelBuilder builder1 = new StAXSOAPModelBuilder(reader,
+ (SOAPFactory)this.envelope.omTarget
+ .getOMFactory(), null);
- org.apache.axiom.soap.SOAPEnvelope soapEnvelope = builder1.getSOAPEnvelope();
- envelope = new SOAPEnvelopeImpl(
- (org.apache.axiom.soap.impl.dom.SOAPEnvelopeImpl)soapEnvelope);
- envelope.target.build();
+ envelope = new SOAPEnvelopeImpl(builder1.getSOAPEnvelope());
+ envelope.omTarget.build();
this.document = envelope.getOwnerDocument();
envelope.setSOAPPartParent(this);
} catch (TransformerFactoryConfigurationError e) {
Modified: axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/TextImplEx.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/TextImplEx.java?rev=1348340&r1=1348339&r2=1348340&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/TextImplEx.java (original)
+++ axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/TextImplEx.java Sat Jun 9 09:18:25 2012
@@ -19,31 +19,29 @@
package org.apache.axis2.saaj;
-import org.apache.axiom.om.impl.dom.DOOMAbstractFactory;
-import org.apache.axiom.om.impl.dom.TextImpl;
+import org.apache.axiom.om.OMAbstractFactory;
+import org.apache.axiom.om.OMText;
import org.w3c.dom.DOMException;
import javax.xml.soap.SOAPElement;
import javax.xml.soap.Text;
-public class TextImplEx extends SAAJNode<TextImpl> implements Text {
+public class TextImplEx extends SAAJNode<org.w3c.dom.Text,OMText> implements Text {
private org.w3c.dom.Node previousSibling;
private org.w3c.dom.Node nextSibling;
public TextImplEx(String data, SOAPElement parent) {
- super((TextImpl)DOOMAbstractFactory.getOMFactory().createOMText(data));
- this.parentElement = parent;
+ this(OMAbstractFactory.getMetaFactory(OMAbstractFactory.FEATURE_DOM).getOMFactory().createOMText(data), parent);
}
- public TextImplEx(TextImpl textNode, SOAPElement parent) {
- super(textNode);
+ public TextImplEx(OMText textNode, SOAPElement parent) {
+ super((org.w3c.dom.Text)textNode, textNode);
this.parentElement = parent;
}
public TextImplEx(String data, SOAPElement parent,
org.w3c.dom.Node prevSibling, org.w3c.dom.Node nextSibling) {
- super((TextImpl)DOOMAbstractFactory.getOMFactory().createOMText(data));
- this.parentElement = parent;
+ this(data, parent);
this.previousSibling = prevSibling;
this.nextSibling = nextSibling;
}
@@ -63,7 +61,7 @@ public class TextImplEx extends SAAJNode
* otherwise
*/
public boolean isComment() {
- String value = target.getText();
+ String value = omTarget.getText();
return value.startsWith("<!--") && value.endsWith("-->");
}
Modified: axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/util/SAAJUtil.java
URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/util/SAAJUtil.java?rev=1348340&r1=1348339&r2=1348340&view=diff
==============================================================================
--- axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/util/SAAJUtil.java (original)
+++ axis/axis2/java/core/trunk/modules/saaj/src/org/apache/axis2/saaj/util/SAAJUtil.java Sat Jun 9 09:18:25 2012
@@ -20,8 +20,9 @@
package org.apache.axis2.saaj.util;
import org.apache.axiom.attachments.Attachments;
+import org.apache.axiom.om.OMAbstractFactory;
import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.impl.dom.DOOMAbstractFactory;
+import org.apache.axiom.om.OMMetaFactory;
import org.apache.axiom.soap.SOAP11Constants;
import org.apache.axiom.soap.SOAP12Constants;
import org.apache.axiom.soap.SOAPEnvelope;
@@ -56,14 +57,15 @@ public class SAAJUtil {
//Check the namespace and find SOAP version and factory
String nsURI;
+ OMMetaFactory metaFactory = OMAbstractFactory.getMetaFactory(OMAbstractFactory.FEATURE_DOM);
SOAPFactory factory;
if (env.getNamespace().getNamespaceURI()
.equals(SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI)) {
nsURI = SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI;
- factory = DOOMAbstractFactory.getSOAP11Factory();
+ factory = metaFactory.getSOAP11Factory();
} else {
nsURI = SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI;
- factory = DOOMAbstractFactory.getSOAP12Factory();
+ factory = metaFactory.getSOAP12Factory();
}
StAXSOAPModelBuilder stAXSOAPModelBuilder =
@@ -81,20 +83,20 @@ public class SAAJUtil {
* @param env An org.apache.axiom.soap.SOAPEnvelope instance
* @return the org.apache.axis2.soap.impl.dom.SOAPEnvelopeImpl of the given SOAP Envelope
*/
- public static org.apache.axiom.soap.impl.dom.SOAPEnvelopeImpl
- toDOOMSOAPEnvelope(org.apache.axiom.soap.SOAPEnvelope env) {
+ public static Element toDOOMSOAPEnvelope(org.apache.axiom.soap.SOAPEnvelope env) {
env.build();
//Check the namespace and find SOAP version and factory
String nsURI;
+ OMMetaFactory metaFactory = OMAbstractFactory.getMetaFactory(OMAbstractFactory.FEATURE_DOM);
SOAPFactory factory;
if (env.getNamespace().getNamespaceURI()
.equals(SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI)) {
nsURI = SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI;
- factory = DOOMAbstractFactory.getSOAP11Factory();
+ factory = metaFactory.getSOAP11Factory();
} else {
nsURI = SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI;
- factory = DOOMAbstractFactory.getSOAP11Factory();
+ factory = metaFactory.getSOAP11Factory();
}
StAXSOAPModelBuilder stAXSOAPModelBuilder =
@@ -102,7 +104,7 @@ public class SAAJUtil {
SOAPEnvelope envelope = (stAXSOAPModelBuilder).getSOAPEnvelope();
envelope.build();
- return (org.apache.axiom.soap.impl.dom.SOAPEnvelopeImpl)envelope;
+ return (Element)envelope;
}
public static org.apache.axiom.soap.SOAPEnvelope