You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by ch...@apache.org on 2005/04/27 05:14:08 UTC

svn commit: r164939 - in /webservices/axis/trunk/java/modules: core/src/org/apache/axis/handlers/addressing/ samples/src/encoding/sample1/ samples/src/encoding/sample2/benchMark/ samples/src/interop/doclit/ samples/src/org/apache/axis/testUtils/ xml/src/org/apache/axis/om/ xml/src/org/apache/axis/om/impl/llom/ xml/src/org/apache/axis/om/impl/llom/builder/ xml/src/org/apache/axis/om/impl/llom/util/ xml/test/org/apache/axis/om/ xml/test/org/apache/axis/om/util/

Author: chinthaka
Date: Tue Apr 26 20:14:06 2005
New Revision: 164939

URL: http://svn.apache.org/viewcvs?rev=164939&view=rev
Log:
OM refactoring

Modified:
    webservices/axis/trunk/java/modules/core/src/org/apache/axis/handlers/addressing/AddressingInHandler.java
    webservices/axis/trunk/java/modules/samples/src/encoding/sample1/EchoProvider.java
    webservices/axis/trunk/java/modules/samples/src/encoding/sample1/EchoStub.java
    webservices/axis/trunk/java/modules/samples/src/encoding/sample1/Sampler.java
    webservices/axis/trunk/java/modules/samples/src/encoding/sample2/benchMark/BenchProvider.java
    webservices/axis/trunk/java/modules/samples/src/interop/doclit/InteropStub.java
    webservices/axis/trunk/java/modules/samples/src/org/apache/axis/testUtils/ObjectToOMBuilder.java
    webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/OMElement.java
    webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/OMElementImpl.java
    webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/SOAPFaultImpl.java
    webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/builder/StAXSOAPModelBuilder.java
    webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/util/XMLComparator.java
    webservices/axis/trunk/java/modules/xml/test/org/apache/axis/om/OMElementTest.java
    webservices/axis/trunk/java/modules/xml/test/org/apache/axis/om/util/XMLComparator.java

Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/handlers/addressing/AddressingInHandler.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/handlers/addressing/AddressingInHandler.java?rev=164939&r1=164938&r2=164939&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/handlers/addressing/AddressingInHandler.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/handlers/addressing/AddressingInHandler.java Tue Apr 26 20:14:06 2005
@@ -108,7 +108,7 @@
 
 
     private void extractEPRInformation(SOAPHeaderBlock headerBlock, EndpointReference epr) {
-        OMElement address = (OMElement) headerBlock.getFirstChildWithName(new QName(AddressingConstants.WSA_NAMESPACE, AddressingConstants.EPR_ADDRESS));
+        OMElement address =  headerBlock.getFirstChildWithName(new QName(AddressingConstants.WSA_NAMESPACE, AddressingConstants.EPR_ADDRESS));
         if (address != null) {
             epr.setAddress(address.getText());
         }

Modified: webservices/axis/trunk/java/modules/samples/src/encoding/sample1/EchoProvider.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/samples/src/encoding/sample1/EchoProvider.java?rev=164939&r1=164938&r2=164939&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/samples/src/encoding/sample1/EchoProvider.java (original)
+++ webservices/axis/trunk/java/modules/samples/src/encoding/sample1/EchoProvider.java Tue Apr 26 20:14:06 2005
@@ -151,11 +151,12 @@
 			OMElement responseMethodName =
 				fac.createOMElement(methodName + "Response", ns);
 			responseEnvelope.getBody().addChild(responseMethodName);
-			OMElement returnelement =
-				fac.createOMElement(methodName + "Return", ns);
+            ObjectToOMBuilder builder = new ObjectToOMBuilder(outobj);
+            OMElement returnelement =
+				fac.createOMElement(methodName + "Return", ns,responseMethodName, builder);
+            builder.setStartElement(returnelement);
 			responseMethodName.addChild(returnelement);
-			returnelement.setBuilder(
-				new ObjectToOMBuilder(returnelement, outobj));
+			
 			returnelement.declareNamespace(
 				OMConstants.ARRAY_ITEM_NSURI,
 				"arrays");

Modified: webservices/axis/trunk/java/modules/samples/src/encoding/sample1/EchoStub.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/samples/src/encoding/sample1/EchoStub.java?rev=164939&r1=164938&r2=164939&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/samples/src/encoding/sample1/EchoStub.java (original)
+++ webservices/axis/trunk/java/modules/samples/src/encoding/sample1/EchoStub.java Tue Apr 26 20:14:06 2005
@@ -43,12 +43,15 @@
         fac = OMFactory.newInstance();
     }
     public EchoStruct[] echoEchoStructArray(EchoStruct[] in) throws Exception {
-        OMElement returnelement = fac.createOMElement("param1", ns);
+
         EchoStructEncoder encoder = new EchoStructEncoder();
         ArrayTypeEncoder arrayEncoder = new ArrayTypeEncoder(in, encoder);
 
         ObjectToOMBuilder builder =
-            new ObjectToOMBuilder(returnelement, arrayEncoder);
+            new ObjectToOMBuilder(arrayEncoder);
+        OMElement returnelement = fac.createOMElement("param1", ns, null, builder);
+
+        builder.setStartElement(returnelement);
 
         returnelement.setBuilder(builder);
         returnelement.declareNamespace(arrayNs);

Modified: webservices/axis/trunk/java/modules/samples/src/encoding/sample1/Sampler.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/samples/src/encoding/sample1/Sampler.java?rev=164939&r1=164938&r2=164939&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/samples/src/encoding/sample1/Sampler.java (original)
+++ webservices/axis/trunk/java/modules/samples/src/encoding/sample1/Sampler.java Tue Apr 26 20:14:06 2005
@@ -73,12 +73,14 @@
             fac.createOMNamespace("http://axis.apache.org", "s");
 
 
-        OMElement returnelement = fac.createOMElement("param1", ns);
         EchoStructEncoder encoder = new EchoStructEncoder();
         ArrayTypeEncoder arrayEncoder = new ArrayTypeEncoder(objs, encoder);
 
         ObjectToOMBuilder builder =
-            new ObjectToOMBuilder(returnelement, arrayEncoder);
+            new ObjectToOMBuilder(arrayEncoder);
+        OMElement returnelement = fac.createOMElement("param1", ns, null, builder);
+
+        builder.setStartElement(returnelement);
 
         returnelement.setBuilder(builder);
         returnelement.declareNamespace(arrayNs);

Modified: webservices/axis/trunk/java/modules/samples/src/encoding/sample2/benchMark/BenchProvider.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/samples/src/encoding/sample2/benchMark/BenchProvider.java?rev=164939&r1=164938&r2=164939&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/samples/src/encoding/sample2/benchMark/BenchProvider.java (original)
+++ webservices/axis/trunk/java/modules/samples/src/encoding/sample2/benchMark/BenchProvider.java Tue Apr 26 20:14:06 2005
@@ -173,11 +173,14 @@
 			OMElement responseMethodName =
 				fac.createOMElement(methodName + "Response", ns);
 			responseEnvelope.getBody().addChild(responseMethodName);
-			OMElement returnelement =
-				fac.createOMElement(methodName + "Return", ns);
+
+            ObjectToOMBuilder builder = new ObjectToOMBuilder(outobj);
+            OMElement returnelement =
+				fac.createOMElement(methodName + "Return", ns, null, builder);
 			responseMethodName.addChild(returnelement);
-			returnelement.setBuilder(
-				new ObjectToOMBuilder(returnelement, outobj));
+            builder.setStartElement(returnelement);
+            returnelement.setBuilder(
+                    builder);
 			returnelement.declareNamespace(
 				OMConstants.ARRAY_ITEM_NSURI,
 				"arrays");

Modified: webservices/axis/trunk/java/modules/samples/src/interop/doclit/InteropStub.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/samples/src/interop/doclit/InteropStub.java?rev=164939&r1=164938&r2=164939&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/samples/src/interop/doclit/InteropStub.java (original)
+++ webservices/axis/trunk/java/modules/samples/src/interop/doclit/InteropStub.java Tue Apr 26 20:14:06 2005
@@ -107,7 +107,7 @@
                 throw new AxisFault("SOAP Fault",SOAPBody.getFault().getException());
             }
 
-            OMElement elt = (OMElement)SOAPBody.getFirstChildWithName(new QName(INTEROP_NS_URI,"echoStructReturn"));
+            OMElement elt = SOAPBody.getFirstChildWithName(new QName(INTEROP_NS_URI,"echoStructReturn"));
             if (elt==null){
                 throw new AxisFault("Return element not found");
             }
@@ -147,7 +147,7 @@
                 throw new AxisFault("SOAP Fault",SOAPBody.getFault().getException());
             }
 
-            OMElement elt = (OMElement)SOAPBody.getFirstChildWithName(new QName(INTEROP_NS_URI,"echoStringArrayReturn"));
+            OMElement elt = SOAPBody.getFirstChildWithName(new QName(INTEROP_NS_URI,"echoStringArrayReturn"));
             if (elt==null){
                 throw new AxisFault("Return element not found");
             }
@@ -176,7 +176,7 @@
                 throw new AxisFault("SOAP Fault",SOAPBody.getFault().getException());
             }
 
-            OMElement elt = (OMElement)SOAPBody.getFirstChildWithName(new QName(INTEROP_NS_URI,"echoStringReturn"));
+            OMElement elt = SOAPBody.getFirstChildWithName(new QName(INTEROP_NS_URI,"echoStringReturn"));
             if (elt==null){
                 throw new AxisFault("Return element not found");
             }

Modified: webservices/axis/trunk/java/modules/samples/src/org/apache/axis/testUtils/ObjectToOMBuilder.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/samples/src/org/apache/axis/testUtils/ObjectToOMBuilder.java?rev=164939&r1=164938&r2=164939&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/samples/src/org/apache/axis/testUtils/ObjectToOMBuilder.java (original)
+++ webservices/axis/trunk/java/modules/samples/src/org/apache/axis/testUtils/ObjectToOMBuilder.java Tue Apr 26 20:14:06 2005
@@ -66,12 +66,27 @@
      */
 
     public ObjectToOMBuilder(OMElement startElement, Encoder outObject) {
-        startElement.setComplete(false);
+        omFactory = OMFactory.newInstance();
         this.outObject = outObject;
+
+        initStartElement(startElement);
+
+    }
+
+    private void initStartElement(OMElement startElement) {
+        startElement.setComplete(false);
         this.startElement = startElement;
         lastNode = startElement;
         startElement.setBuilder(this);
+    }
+
+    public ObjectToOMBuilder(Encoder outObject){
+        this.outObject = outObject;
         omFactory = OMFactory.newInstance();
+    }
+
+    public void setStartElement(OMElement startElement) {
+        initStartElement(startElement);
     }
 
     public int next() throws OMException {

Modified: webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/OMElement.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/OMElement.java?rev=164939&r1=164938&r2=164939&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/OMElement.java (original)
+++ webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/OMElement.java Tue Apr 26 20:14:06 2005
@@ -52,7 +52,7 @@
      * @return
      * @throws OMException
      */
-    public OMNode getFirstChildWithName(QName elementQName) throws OMException;
+    public OMElement getFirstChildWithName(QName elementQName) throws OMException;
 
     /**
      * This returns a collection of this element.
@@ -115,6 +115,13 @@
     public Iterator getAttributes();
 
     /**
+     *
+     * @param qname
+     * @return
+     */
+    public Iterator getAttributes(QName qname);
+
+    /**
      * This will insert attribute to this element. Implementor can decide as to insert this
      * in the front or at the end of set of attributes
      *
@@ -131,7 +138,7 @@
      * @return
      */
     public OMAttribute addAttribute(String attributeName, String value,
-                                    OMNamespace ns);
+                                       OMNamespace ns);
 
     /**
      * Method removeAttribute

Modified: webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/OMElementImpl.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/OMElementImpl.java?rev=164939&r1=164938&r2=164939&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/OMElementImpl.java (original)
+++ webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/OMElementImpl.java Tue Apr 26 20:14:06 2005
@@ -216,7 +216,7 @@
      * @return
      * @throws OMException
      */
-    public OMNode getFirstChildWithName(QName elementQName) throws OMException {
+    public OMElement getFirstChildWithName(QName elementQName) throws OMException {
         OMChildrenQNameIterator omChildrenQNameIterator =
                 new OMChildrenQNameIterator((OMNodeImpl) getFirstChild(),
                         elementQName);
@@ -224,7 +224,9 @@
         if (omChildrenQNameIterator.hasNext()) {
             omNode = (OMNode) omChildrenQNameIterator.next();
         }
-        return omNode;
+
+        return OMNode.ELEMENT_NODE == omNode.getType() ? (OMElement) omNode : null;
+
     }
 
     /**
@@ -239,14 +241,14 @@
 
 
         child.setParent(this);
-
+        
         child.setPreviousSibling(null);
         child.setNextSibling(firstChild);
         if (firstChild != null) {
             OMNodeImpl firstChildImpl = (OMNodeImpl) firstChild;
             firstChildImpl.setPreviousSibling(child);
         }
-        this.setFirstChild(child);
+        this.firstChild = child;
     }
 
     /**
@@ -407,6 +409,10 @@
         return attributes.values().iterator();
     }
 
+    public Iterator getAttributes(QName qname) {
+        return null;  //ToDO
+    }
+
     /**
      * This will insert attribute to this element. Implementor can decide as to insert this
      * in the front or at the end of set of attributes
@@ -442,7 +448,7 @@
      * @return
      */
     public OMAttribute addAttribute(String attributeName, String value,
-                                    OMNamespace ns) {
+                                       OMNamespace ns) {
         OMNamespace namespace = null;
         if (ns != null) {
             namespace = findNamespace(ns.getName(), ns.getPrefix());

Modified: webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/SOAPFaultImpl.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/SOAPFaultImpl.java?rev=164939&r1=164938&r2=164939&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/SOAPFaultImpl.java (original)
+++ webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/SOAPFaultImpl.java Tue Apr 26 20:14:06 2005
@@ -47,22 +47,22 @@
     /**
      * Field faultCodeElement
      */
-    private OMElementImpl faultCodeElement;
+    private OMElement faultCodeElement;
 
     /**
      * Field faultActorElement
      */
-    private OMElementImpl faultActorElement;
+    private OMElement faultActorElement;
 
     /**
      * Field faultStringElement
      */
-    private OMElementImpl faultStringElement;
+    private OMElement faultStringElement;
 
     /**
      * Field detailElement
      */
-    private OMElementImpl detailElement;
+    private OMElement detailElement;
 
     /**
      * Constructor SOAPFaultImpl
@@ -128,7 +128,7 @@
                 }
             }
         } else {
-            faultCodeElement = (OMElementImpl) this.getFirstChildWithName(
+            faultCodeElement =  this.getFirstChildWithName(
                     new QName(
                             this.ns.getName(), SOAPConstants.SOAPFAULT_CODE_LOCAL_NAME,
                             this.ns.getPrefix()));
@@ -172,7 +172,7 @@
                 }
             }
         } else {
-            faultActorElement = (OMElementImpl) this.getFirstChildWithName(
+            faultActorElement = this.getFirstChildWithName(
                     new QName(
                             this.ns.getName(), SOAPConstants.SOAPFAULT_ACTOR_LOCAL_NAME,
                             this.ns.getPrefix()));
@@ -216,7 +216,7 @@
                 }
             }
         } else {
-            faultStringElement = (OMElementImpl) this.getFirstChildWithName(
+            faultStringElement =  this.getFirstChildWithName(
                     new QName(
                             this.ns.getName(), SOAPConstants.SOAPFAULT_STRING_LOCAL_NAME,
                             this.ns.getPrefix()));
@@ -258,7 +258,7 @@
                 }
             }
         } else {
-            detailElement = (OMElementImpl) this.getFirstChildWithName(
+            detailElement = this.getFirstChildWithName(
                     new QName(
                             this.ns.getName(), SOAPConstants.SOAPFAULT_DETAIL_LOCAL_NAME,
                             this.ns.getPrefix()));

Modified: webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/builder/StAXSOAPModelBuilder.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/builder/StAXSOAPModelBuilder.java?rev=164939&r1=164938&r2=164939&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/builder/StAXSOAPModelBuilder.java (original)
+++ webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/builder/StAXSOAPModelBuilder.java Tue Apr 26 20:14:06 2005
@@ -97,7 +97,7 @@
         // identifySOAPVersion() method. So not checking getSOAPEnvelope() == null here
         SOAPHeader soapHeader = getSOAPEnvelope().getHeader();
 
-        if (soapHeader != null) {
+        if (soapHeader != null) {                  
             while (!soapHeader.isComplete()) {
                 next();
             }

Modified: webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/util/XMLComparator.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/util/XMLComparator.java?rev=164939&r1=164938&r2=164939&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/util/XMLComparator.java (original)
+++ webservices/axis/trunk/java/modules/xml/src/org/apache/axis/om/impl/llom/util/XMLComparator.java Tue Apr 26 20:14:06 2005
@@ -83,11 +83,11 @@
             OMNode omNode = (OMNode) elementOneChildren.next();
             if(omNode instanceof OMElement){
                 OMElement elementOneChild = (OMElement) omNode;
-                OMNode elementTwoChild = elementTwo.getFirstChildWithName(elementOneChild.getQName());
+                OMElement elementTwoChild = elementTwo.getFirstChildWithName(elementOneChild.getQName());
                 if(elementTwoChild == null){
                     throw new XMLComparisonException(" There is no " + elementOneChild.getLocalName() + " element under " + elementTwo.getLocalName());
                 }
-                compare(elementOneChild, (OMElement) elementTwoChild);
+                compare(elementOneChild,  elementTwoChild);
             }
         }
     }

Modified: webservices/axis/trunk/java/modules/xml/test/org/apache/axis/om/OMElementTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/xml/test/org/apache/axis/om/OMElementTest.java?rev=164939&r1=164938&r2=164939&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/xml/test/org/apache/axis/om/OMElementTest.java (original)
+++ webservices/axis/trunk/java/modules/xml/test/org/apache/axis/om/OMElementTest.java Tue Apr 26 20:14:06 2005
@@ -40,7 +40,7 @@
         try {
             StAXSOAPModelBuilder soapBuilder = getOMBuilder("soap/OMElementTest.xml");
             SOAPEnvelope soapEnvelope = (SOAPEnvelope) soapBuilder.getDocumentElement();
-            OMElement wsaTo = (OMElement) soapEnvelope.getHeader().getFirstChildWithName(new QName(WSA_URI, WSA_TO));
+            OMElement wsaTo = soapEnvelope.getHeader().getFirstChildWithName(new QName(WSA_URI, WSA_TO));
 
             String expectedString = "http://localhost:8081/axis/services/BankPort";
             assertEquals("getText is not returning the correct value", wsaTo.getText().trim(), expectedString);

Modified: webservices/axis/trunk/java/modules/xml/test/org/apache/axis/om/util/XMLComparator.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/xml/test/org/apache/axis/om/util/XMLComparator.java?rev=164939&r1=164938&r2=164939&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/xml/test/org/apache/axis/om/util/XMLComparator.java (original)
+++ webservices/axis/trunk/java/modules/xml/test/org/apache/axis/om/util/XMLComparator.java Tue Apr 26 20:14:06 2005
@@ -81,11 +81,11 @@
             OMNode omNode = (OMNode) elementOneChildren.next();
             if(omNode instanceof OMElement){
                 OMElement elementOneChild = (OMElement) omNode;
-                OMNode elementTwoChild = elementTwo.getFirstChildWithName(elementOneChild.getQName());
+                OMElement elementTwoChild = elementTwo.getFirstChildWithName(elementOneChild.getQName());
                 if(elementTwoChild == null){
                     throw new XMLComparisonException(" There is no " + elementOneChild.getLocalName() + " element under " + elementTwo.getLocalName());
                 }
-                compare(elementOneChild, (OMElement) elementTwoChild);
+                compare(elementOneChild, elementTwoChild);
             }
         }
     }