Author: chinthaka
Date: Thu Aug 25 00:48:01 2005
New Revision: 240018

URL: http://svn.apache.org/viewcvs?rev=240018&view=rev
Log:
- Adding SOAPMessage

Added:
    
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/SOAPMessage.java
    
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/impl/llom/SOAPMessageImpl.java
Modified:
    
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/OMDocumentImpl.java
    
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/builder/StAXOMBuilder.java
    
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/SOAPFactory.java
    
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/impl/llom/builder/StAXSOAPModelBuilder.java
    
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/impl/llom/factory/SOAPLinkedListImplFactory.java

Modified: 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/OMDocumentImpl.java
URL: 
http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/OMDocumentImpl.java?rev=240018&r1=240017&r2=240018&view=diff
==============================================================================
--- 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/OMDocumentImpl.java
 (original)
+++ 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/OMDocumentImpl.java
 Thu Aug 25 00:48:01 2005
@@ -31,7 +31,7 @@
     /**

      * Field rootElement

      */

-    private OMElement rootElement;

+    protected OMElement rootElement;

 

     /**

      * Field firstChild

@@ -41,7 +41,7 @@
     /**

      * Field lastChild

      */

-    private OMNode lastChild;

+    protected OMNode lastChild;

 

     /**

      * Field done

@@ -51,18 +51,18 @@
     /**

      * Field parserWrapper

      */

-    private OMXMLParserWrapper parserWrapper;

+    protected OMXMLParserWrapper parserWrapper;

 

     /**

      * Field charSetEncoding

      * Dafult : UTF-8

      */

-    private String charSetEncoding = "UTF-8";

+    protected String charSetEncoding = "UTF-8";

     

     /**

      * Field xmlVersion

      */

-    private String xmlVersion = "1.0";

+    protected String xmlVersion = "1.0";

     

 

     


Modified: 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/builder/StAXOMBuilder.java
URL: 
http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/builder/StAXOMBuilder.java?rev=240018&r1=240017&r2=240018&view=diff
==============================================================================
--- 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/builder/StAXOMBuilder.java
 (original)
+++ 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/om/impl/llom/builder/StAXOMBuilder.java
 Thu Aug 25 00:48:01 2005
@@ -250,4 +250,8 @@
             }

         }

     }

+

+    public OMDocumentImpl getDocument() {

+        return document;

+    }

 }


Modified: 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/SOAPFactory.java
URL: 
http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/SOAPFactory.java?rev=240018&r1=240017&r2=240018&view=diff
==============================================================================
--- 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/SOAPFactory.java
 (original)
+++ 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/SOAPFactory.java
 Thu Aug 25 00:48:01 2005
@@ -27,6 +27,9 @@
      * Eran Chinthaka ([EMAIL PROTECTED])

      */

 

+    public SOAPMessage createSOAPMessage(OMXMLParserWrapper builder);

+    public SOAPMessage createSOAPMessage(SOAPEnvelope envelope, 
OMXMLParserWrapper parserWrapper);

+

     /**

      * @param builder

      * @return


Added: 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/SOAPMessage.java
URL: 
http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/SOAPMessage.java?rev=240018&view=auto
==============================================================================
--- 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/SOAPMessage.java
 (added)
+++ 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/SOAPMessage.java
 Thu Aug 25 00:48:01 2005
@@ -0,0 +1,29 @@
+package org.apache.axis2.soap;

+

+import org.apache.axis2.om.OMDocument;

+import org.apache.axis2.soap.impl.llom.SOAPProcessingException;

+

+/*

+ * Copyright 2001-2004 The Apache Software Foundation.

+ *

+ * Licensed under the Apache License, Version 2.0 (the "License");

+ * you may not use this file except in compliance with the License.

+ * You may obtain a copy of the License at

+ *

+ *      http://www.apache.org/licenses/LICENSE-2.0

+ *

+ * Unless required by applicable law or agreed to in writing, software

+ * distributed under the License is distributed on an "AS IS" BASIS,

+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

+ * See the License for the specific language governing permissions and

+ * limitations under the License.

+ *

+ * @author : Eran Chinthaka ([EMAIL PROTECTED])

+ */

+

+public interface SOAPMessage extends OMDocument {

+

+    public SOAPEnvelope getSOAPEnvelope() throws SOAPProcessingException;

+    public void setSOAPEnvelope(SOAPEnvelope envelope) throws 
SOAPProcessingException;

+

+}


Added: 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/impl/llom/SOAPMessageImpl.java
URL: 
http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/impl/llom/SOAPMessageImpl.java?rev=240018&view=auto
==============================================================================
--- 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/impl/llom/SOAPMessageImpl.java
 (added)
+++ 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/impl/llom/SOAPMessageImpl.java
 Thu Aug 25 00:48:01 2005
@@ -0,0 +1,86 @@
+package org.apache.axis2.soap.impl.llom;

+

+import org.apache.axis2.om.OMElement;

+import org.apache.axis2.om.OMNode;

+import org.apache.axis2.om.OMXMLParserWrapper;

+import org.apache.axis2.om.impl.OMOutputImpl;

+import org.apache.axis2.om.impl.llom.OMDocumentImpl;

+import org.apache.axis2.soap.SOAPEnvelope;

+import org.apache.axis2.soap.SOAPMessage;

+

+import javax.xml.stream.XMLStreamException;

+

+/*

+ * Copyright 2001-2004 The Apache Software Foundation.

+ *

+ * Licensed under the Apache License, Version 2.0 (the "License");

+ * you may not use this file except in compliance with the License.

+ * You may obtain a copy of the License at

+ *

+ *      http://www.apache.org/licenses/LICENSE-2.0

+ *

+ * Unless required by applicable law or agreed to in writing, software

+ * distributed under the License is distributed on an "AS IS" BASIS,

+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

+ * See the License for the specific language governing permissions and

+ * limitations under the License.

+ *

+ * @author : Eran Chinthaka ([EMAIL PROTECTED])

+ */

+

+public class SOAPMessageImpl extends OMDocumentImpl implements SOAPMessage {

+

+

+    public SOAPMessageImpl() {

+    }

+

+    public SOAPMessageImpl(SOAPEnvelope envelope, OMXMLParserWrapper 
parserWrapper) {

+        super(envelope, parserWrapper);

+    }

+

+    public SOAPMessageImpl(OMXMLParserWrapper parserWrapper) {

+        super(parserWrapper);

+    }

+

+

+    public SOAPEnvelope getSOAPEnvelope() throws SOAPProcessingException {

+        return (SOAPEnvelope) getDocumentElement();

+    }

+

+    public void setSOAPEnvelope(SOAPEnvelope envelope) throws 
SOAPProcessingException {

+        super.addChild(envelope);

+        this.rootElement = envelope;

+    }

+

+    public void setDocumentElement(OMElement rootElement) {

+        throw new UnsupportedOperationException("This is not allowed. Use set 
SOAPEnvelope instead");

+    }

+

+    public void addChild(OMNode child) {

+        throw new UnsupportedOperationException("Can not add normal children 
to SOAP envelope. Use setSOAPEnvelope()");

+    }

+

+

+    public void setFirstChild(OMNode firstChild) {

+        throw new UnsupportedOperationException("This is not allowed. Use set 
SOAPEnvelope instead");

+    }

+

+    private void serialize(OMOutputImpl omOutput, boolean cache, boolean 
includeXMLDeclaration) throws XMLStreamException {

+        if (includeXMLDeclaration) {

+            //Check whether the OMOutput char encoding and OMDocument char

+            //encoding matches, if not use char encoding of OMOutput

+            String outputCharEncoding = omOutput.getCharSetEncoding();

+            if (!outputCharEncoding.equalsIgnoreCase(this.charSetEncoding)) {

+                this.charSetEncoding = outputCharEncoding;

+            }

+            omOutput.getXmlStreamWriter().writeStartDocument(charSetEncoding,

+                    xmlVersion);

+        }

+

+        if (cache) {

+            this.rootElement.serializeWithCache(omOutput);

+        } else {

+            this.rootElement.serialize(omOutput);

+        }

+    }

+}


Modified: 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/impl/llom/builder/StAXSOAPModelBuilder.java
URL: 
http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/impl/llom/builder/StAXSOAPModelBuilder.java?rev=240018&r1=240017&r2=240018&view=diff
==============================================================================
--- 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/impl/llom/builder/StAXSOAPModelBuilder.java
 (original)
+++ 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/impl/llom/builder/StAXSOAPModelBuilder.java
 Thu Aug 25 00:48:01 2005
@@ -16,6 +16,7 @@
 package org.apache.axis2.soap.impl.llom.builder;

 

 import org.apache.axis2.om.*;

+import org.apache.axis2.om.impl.llom.OMDocumentImpl;

 import org.apache.axis2.om.impl.llom.builder.StAXOMBuilder;

 import org.apache.axis2.soap.*;

 import org.apache.axis2.soap.impl.llom.SOAPConstants;

@@ -30,6 +31,8 @@
  * Class StAXSOAPModelBuilder

  */

 public class StAXSOAPModelBuilder extends StAXOMBuilder {

+

+    SOAPMessage soapMessage;

     /**

      * Field envelope

      */

@@ -86,6 +89,7 @@
     public StAXSOAPModelBuilder(XMLStreamReader parser, String soapVersion) {

         super(parser);

         soapFactory = OMAbstractFactory.getDefaultSOAPFactory();

+        soapMessage = soapFactory.createSOAPMessage(this);

         identifySOAPVersion(soapVersion);

         parseHeaders();

     }

@@ -102,8 +106,8 @@
     public StAXSOAPModelBuilder(XMLStreamReader parser, SOAPFactory factory, 
String soapVersion) {

         super(parser);

         soapFactory = factory;

+        soapMessage = soapFactory.createSOAPMessage(this);

         identifySOAPVersion(soapVersion);

-

         parseHeaders();

     }

 

@@ -176,6 +180,7 @@
         String elementName = parser.getLocalName();

         if (lastNode == null) {

             node = constructNode(null, elementName, true);

+            soapMessage.setSOAPEnvelope((SOAPEnvelope) node);

         } else if (lastNode.isComplete()) {

             node =

                     constructNode((OMElement) lastNode.getParent(),

@@ -201,7 +206,6 @@
      * @param parent

      * @param elementName

      * @param isEnvelope

-     * @return

      */

     protected OMElement constructNode(OMElement parent, String elementName,

                                       boolean isEnvelope) {

@@ -353,7 +357,7 @@
     protected OMNode createDTD() throws OMException {

        throw new OMException("SOAP message MUST NOT contain a Document Type 
Declaration(DTD)");

     }

-    

+

     /**

      * Method createPI

      * 

@@ -363,7 +367,7 @@
     protected OMNode createPI() throws OMException {

        throw new OMException("SOAP message MUST NOT contain Processing 
Instructions(PI)");

     }

-    

+

     /**

      * Method getDocumentElement

      *

@@ -401,7 +405,7 @@
                 namespace = node.findNamespace(namespaceURI, prefix);

             }

             node.setNamespace(namespace);

-        } 

+        }

 

 

 

@@ -437,6 +441,14 @@
 

     public void setProcessingDetailElements(boolean value) {

         processingDetailElements = value;

+    }

+

+    public SOAPMessage getSoapMessage() {

+        return soapMessage;

+    }

+

+    public OMDocumentImpl getDocument() {

+        return (OMDocumentImpl) this.soapMessage;

     }

 

 }


Modified: 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/impl/llom/factory/SOAPLinkedListImplFactory.java
URL: 
http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/impl/llom/factory/SOAPLinkedListImplFactory.java?rev=240018&r1=240017&r2=240018&view=diff
==============================================================================
--- 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/impl/llom/factory/SOAPLinkedListImplFactory.java
 (original)
+++ 
webservices/axis/trunk/java/modules/xml/src/org/apache/axis2/soap/impl/llom/factory/SOAPLinkedListImplFactory.java
 Thu Aug 25 00:48:01 2005
@@ -5,6 +5,7 @@
 import org.apache.axis2.om.impl.llom.factory.OMLinkedListImplFactory;

 import org.apache.axis2.soap.*;

 import org.apache.axis2.soap.impl.llom.SOAPEnvelopeImpl;

+import org.apache.axis2.soap.impl.llom.SOAPMessageImpl;

 import org.apache.axis2.soap.impl.llom.SOAPProcessingException;

 

 /**

@@ -24,6 +25,14 @@
  * <p/>

  */

 public class SOAPLinkedListImplFactory extends OMLinkedListImplFactory 
implements SOAPFactory {

+    public SOAPMessage createSOAPMessage(OMXMLParserWrapper builder) {

+        return new SOAPMessageImpl(builder);

+    }

+

+    public SOAPMessage createSOAPMessage(SOAPEnvelope envelope, 
OMXMLParserWrapper parserWrapper) {

+        return new SOAPMessageImpl(envelope, parserWrapper);

+    }

+

     /**

      * Eran Chinthaka ([EMAIL PROTECTED])

      */



Reply via email to