You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commons-dev@ws.apache.org by ve...@apache.org on 2009/12/22 01:42:50 UTC

svn commit: r893049 - in /webservices/commons/trunk/modules/axiom/modules: axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/ axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/ axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/factory/ axi...

Author: veithen
Date: Tue Dec 22 00:42:49 2009
New Revision: 893049

URL: http://svn.apache.org/viewvc?rev=893049&view=rev
Log:
LLOM: Make sure that the factory attribute in OMDocumentImpl is always properly initialized, exactly as in DOOM.

Modified:
    webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/NodeImpl.java
    webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMDocumentImpl.java
    webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMNodeImpl.java
    webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMSerializableImpl.java
    webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/factory/OMLinkedListImplFactory.java
    webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPEnvelopeImpl.java
    webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPMessageImpl.java
    webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/soap11/SOAP11Factory.java
    webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/soap12/SOAP12Factory.java

Modified: webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/NodeImpl.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/NodeImpl.java?rev=893049&r1=893048&r2=893049&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/NodeImpl.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/NodeImpl.java Tue Dec 22 00:42:49 2009
@@ -57,7 +57,7 @@
     protected DocumentImpl ownerNode;
 
     /** Factory that created this node */
-    protected OMFactory factory;
+    protected final OMFactory factory;
 
     // data
 

Modified: webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMDocumentImpl.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMDocumentImpl.java?rev=893049&r1=893048&r2=893049&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMDocumentImpl.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMDocumentImpl.java Tue Dec 22 00:42:49 2009
@@ -58,33 +58,14 @@
 
     protected String isStandalone;
 
-    /** Default constructor */
-    public OMDocumentImpl() {
-        this.done = true;
-    }
-
-    /**
-     * @param documentElement
-     * @param parserWrapper
-     */
-    public OMDocumentImpl(OMElement documentElement, OMXMLParserWrapper parserWrapper) {
-        this.documentElement = documentElement;
-        this.builder = parserWrapper;
-    }
-
-    /** @param parserWrapper  */
-    public OMDocumentImpl(OMXMLParserWrapper parserWrapper) {
-        this.builder = parserWrapper;
-    }
-
     /**
      * Create a <code>OMDocument</code> given the <code>OMFactory</code>
      *
      * @param factory The <code>OMFactory</code> that created this instace
      */
     public OMDocumentImpl(OMFactory factory) {
-        this();
-        this.factory = factory;
+        super(factory);
+        this.done = true;
     }
 
     /**
@@ -94,8 +75,8 @@
      * @param factory
      */
     public OMDocumentImpl(OMXMLParserWrapper parserWrapper, OMFactory factory) {
-        this(parserWrapper);
-        this.factory = factory;
+        super(factory);
+        this.builder = parserWrapper;
     }
 
     /**
@@ -108,15 +89,9 @@
      */
     public OMDocumentImpl(OMElement documentElement, OMXMLParserWrapper parserWrapper,
                           OMFactory factory) {
-        this(documentElement, parserWrapper);
-        this.factory = factory;
-    }
-
-    public OMFactory getOMFactory() {
-        if (factory == null) {
-            factory = this.getOMDocumentElement().getOMFactory();
-        }
-        return factory;
+        super(factory);
+        this.documentElement = documentElement;
+        this.builder = parserWrapper;
     }
 
     /**

Modified: webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMNodeImpl.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMNodeImpl.java?rev=893049&r1=893048&r2=893049&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMNodeImpl.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMNodeImpl.java Tue Dec 22 00:42:49 2009
@@ -57,7 +57,7 @@
      * @param factory The <code>OMFactory</code> that created this
      */
     public OMNodeImpl(OMFactory factory) {
-        this.factory = factory;
+        super(factory);
     }
 
     /**
@@ -67,8 +67,8 @@
      * @param factory The <code>OMFactory</code> that created this
      */
     public OMNodeImpl(OMContainer parent, OMFactory factory, boolean done) {
+        super(factory);
         this.done = done;
-        this.factory = factory;
         if ((parent != null)) {
             this.parent = (OMContainerEx) parent;
             parent.addChild(this);

Modified: webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMSerializableImpl.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMSerializableImpl.java?rev=893049&r1=893048&r2=893049&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMSerializableImpl.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/OMSerializableImpl.java Tue Dec 22 00:42:49 2009
@@ -46,7 +46,11 @@
     /** Field done */
     protected boolean done = false;
 
-    protected OMFactory factory;
+    protected final OMFactory factory;
+
+    public OMSerializableImpl(OMFactory factory) {
+        this.factory = factory;
+    }
 
     public OMFactory getOMFactory() {
         return factory;

Modified: webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/factory/OMLinkedListImplFactory.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/factory/OMLinkedListImplFactory.java?rev=893049&r1=893048&r2=893049&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/factory/OMLinkedListImplFactory.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/factory/OMLinkedListImplFactory.java Tue Dec 22 00:42:49 2009
@@ -348,13 +348,13 @@
     * @see org.apache.axiom.om.OMFactory#createOMDocument()
     */
     public OMDocument createOMDocument() {
-        return new OMDocumentImpl();
+        return new OMDocumentImpl(this);
     }
 
     /* (non-Javadoc)
       * @see org.apache.axiom.om.OMFactory#createOMDocument(org.apache.axiom.om.OMXMLParserWrapper)
       */
     public OMDocument createOMDocument(OMXMLParserWrapper builder) {
-        return new OMDocumentImpl(builder);
+        return new OMDocumentImpl(builder, this);
     }
 }

Modified: webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPEnvelopeImpl.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPEnvelopeImpl.java?rev=893049&r1=893048&r2=893049&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPEnvelopeImpl.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPEnvelopeImpl.java Tue Dec 22 00:42:49 2009
@@ -60,7 +60,6 @@
      */
     public SOAPEnvelopeImpl(OMXMLParserWrapper builder, SOAPFactory factory) {
         super(null, SOAPConstants.SOAPENVELOPE_LOCAL_NAME, builder, factory);
-        this.factory = factory;
     }
 
     /**
@@ -70,7 +69,6 @@
      */
     public SOAPEnvelopeImpl(OMNamespace ns, SOAPFactory factory) {
         super(SOAPConstants.SOAPENVELOPE_LOCAL_NAME, ns, factory);
-        this.factory = factory;
     }
 
     public SOAPVersion getVersion() {

Modified: webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPMessageImpl.java
URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPMessageImpl.java?rev=893049&r1=893048&r2=893049&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPMessageImpl.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/SOAPMessageImpl.java Tue Dec 22 00:42:49 2009
@@ -25,6 +25,7 @@
 import org.apache.axiom.om.impl.OMNodeEx;
 import org.apache.axiom.om.impl.llom.OMDocumentImpl;
 import org.apache.axiom.soap.SOAPEnvelope;
+import org.apache.axiom.soap.SOAPFactory;
 import org.apache.axiom.soap.SOAPMessage;
 import org.apache.axiom.soap.SOAPProcessingException;
 
@@ -34,15 +35,16 @@
 public class SOAPMessageImpl extends OMDocumentImpl implements SOAPMessage {
 
 
-    public SOAPMessageImpl() {
+    public SOAPMessageImpl(SOAPFactory factory) {
+        super(factory);
     }
 
-    public SOAPMessageImpl(SOAPEnvelope envelope, OMXMLParserWrapper parserWrapper) {
-        super(envelope, parserWrapper);
+    public SOAPMessageImpl(SOAPEnvelope envelope, OMXMLParserWrapper parserWrapper, SOAPFactory factory) {
+        super(envelope, parserWrapper, factory);
     }
 
-    public SOAPMessageImpl(OMXMLParserWrapper parserWrapper) {
-        super(parserWrapper);
+    public SOAPMessageImpl(OMXMLParserWrapper parserWrapper, SOAPFactory factory) {
+        super(parserWrapper, factory);
     }
 
 

Modified: webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/soap11/SOAP11Factory.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/SOAP11Factory.java?rev=893049&r1=893048&r2=893049&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/soap11/SOAP11Factory.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/soap11/SOAP11Factory.java Tue Dec 22 00:42:49 2009
@@ -312,16 +312,16 @@
     }
 
     public SOAPMessage createSOAPMessage() {
-        return new SOAPMessageImpl();
+        return new SOAPMessageImpl(this);
     }
 
     public SOAPMessage createSOAPMessage(OMXMLParserWrapper builder) {
-        return new SOAPMessageImpl(builder);
+        return new SOAPMessageImpl(builder, this);
     }
 
 
     public SOAPMessage createSOAPMessage(SOAPEnvelope envelope, OMXMLParserWrapper parserWrapper) {
-        return new SOAPMessageImpl(envelope, parserWrapper);
+        return new SOAPMessageImpl(envelope, parserWrapper, this);
     }
 
 

Modified: webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/soap12/SOAP12Factory.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/SOAP12Factory.java?rev=893049&r1=893048&r2=893049&view=diff
==============================================================================
--- webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/soap12/SOAP12Factory.java (original)
+++ webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/soap/impl/llom/soap12/SOAP12Factory.java Tue Dec 22 00:42:49 2009
@@ -314,16 +314,16 @@
     }
 
     public SOAPMessage createSOAPMessage() {
-        return new SOAPMessageImpl();
+        return new SOAPMessageImpl(this);
     }
 
     public SOAPMessage createSOAPMessage(OMXMLParserWrapper builder) {
-        return new SOAPMessageImpl(builder);
+        return new SOAPMessageImpl(builder, this);
     }
 
 
     public SOAPMessage createSOAPMessage(SOAPEnvelope envelope, OMXMLParserWrapper parserWrapper) {
-        return new SOAPMessageImpl(envelope, parserWrapper);
+        return new SOAPMessageImpl(envelope, parserWrapper, this);
     }