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); }