Author: veithen Date: Fri Mar 6 08:22:25 2009 New Revision: 750807 URL: http://svn.apache.org/viewvc?rev=750807&view=rev Log: Updated Javadoc for changes in r749780.
Modified: webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/OMAbstractFactory.java webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/OMMetaFactory.java webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/factory/OMDOMFactory.java webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/factory/OMDOMMetaFactory.java webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/factory/OMLinkedListMetaFactory.java Modified: webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/OMAbstractFactory.java URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/OMAbstractFactory.java?rev=750807&r1=750806&r2=750807&view=diff ============================================================================== --- webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/OMAbstractFactory.java (original) +++ webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/OMAbstractFactory.java Fri Mar 6 08:22:25 2009 @@ -23,47 +23,22 @@ import org.apache.axiom.soap.SOAPFactory; /** - * Provides default instances for plain XML, SOAP 1.1 and SOAP 1.2 object model factories. - * - * <p>The implementation class for each object model type is determined by a specific - * system property. If the system property is not set, a default implementation class - * is chosen. The following table summarizes the system properties and default implementation - * used:</p> - * <table border="1"> - * <tr> - * <th>Object model</th> - * <th>Method</th> - * <th>System property</th> - * <th>Default implementation</th> - * </tr> - * <tr> - * <td>Plain XML</td> - * <td>{...@link #getOMFactory()}</td> - * <td><tt>om.factory</tt></td> - * <td>{...@link org.apache.axiom.om.impl.llom.factory.OMLinkedListImplFactory}</td> - * </tr> - * <tr> - * <td>SOAP 1.1</td> - * <td>{...@link #getSOAP11Factory()}</td> - * <td><tt>soap11.factory</tt></td> - * <td>{...@link org.apache.axiom.soap.impl.llom.soap11.SOAP11Factory}</td> - * </tr> - * <tr> - * <td>SOAP 1.2</td> - * <td>{...@link #getSOAP12Factory()}</td> - * <td><tt>soap12.factory</tt></td> - * <td>{...@link org.apache.axiom.soap.impl.llom.soap12.SOAP12Factory}</td> - * </tr> - * </table> - * <p>The methods in this class assume that {...@link OMFactory} instances are stateless and - * return the same instance on every invocation, i.e. the factory for each OM type is instantiated - * only once. Configuring the system properties with factory implementation that are not - * stateless will lead to unexpected results. It should be noted that the factories provided - * by the DOOM implementation are not stateless and should therefore never be used as default - * factories.</p> - * <p>Each method in this class uses {...@link System#getProperty(String)} to determine the value of - * the relevant system property. A {...@link SecurityException} thrown by this method is simply ignored - * and the default factory implementation is used.</p> + * Provides default instances for object model and meta factories. + * <p> + * The {...@link #getMetaFactory()} method returns the default {...@link OMMetaFactory} instance. + * The implementation class is determined by the <code>org.apache.axiom.om.OMMetaFactory</code> + * system property. If this property is not set, the meta factory for the LLOM implementation + * is used. + * <p> + * The {...@link #getOMFactory()}, {...@link #getSOAP11Factory()} and {...@link #getSOAP12Factory()} + * methods return default instances for plain XML, SOAP 1.1 and SOAP 1.2 object model factories. + * They are convenience methods calling {...@link #getMetaFactory()} and then delegating to the + * returned {...@link OMMetaFactory}. + * <p> + * Note that while {...@link #getMetaFactory()} always returns the same instance, the other methods + * may return new instances on every invocation, depending on the {...@link OMMetaFactory} + * implementation. + * <p> */ public class OMAbstractFactory { public static final String META_FACTORY_NAME_PROPERTY = "org.apache.axiom.om.OMMetaFactory"; @@ -76,7 +51,14 @@ private OMAbstractFactory() {} /** - * Get the default meta factory instance. + * Get the default meta factory instance. The implementation class is determined by the + * <code>org.apache.axiom.om.OMMetaFactory</code> system property. If this property is not + * set, the meta factory for the LLOM implementation is returned. + * <p> + * This method uses {...@link System#getProperty(String)} to determine the value of + * the <code>org.apache.axiom.om.OMMetaFactory</code> system property. A + * {...@link SecurityException} thrown by this method is simply ignored + * and the default factory implementation is used. * * @return the default OM factory instance * @throws OMException if the factory's implementation class can't be found Modified: webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/OMMetaFactory.java URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/OMMetaFactory.java?rev=750807&r1=750806&r2=750807&view=diff ============================================================================== --- webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/OMMetaFactory.java (original) +++ webservices/commons/trunk/modules/axiom/modules/axiom-api/src/main/java/org/apache/axiom/om/OMMetaFactory.java Fri Mar 6 08:22:25 2009 @@ -22,8 +22,9 @@ import org.apache.axiom.soap.SOAPFactory; /** - * Interface encapsulating a particular object model. - * It provides instances for plain XML, SOAP 1.1 and SOAP 1.2 object model factories for the + * Object model meta factory. + * This interface encapsulates a particular object model and provides instances + * for plain XML, SOAP 1.1 and SOAP 1.2 object model factories for the * given object model implementation. Currently the two OM implementations provided by * Axiom are LLOM (linked list) and DOM. * <p> Modified: webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/factory/OMDOMFactory.java URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/factory/OMDOMFactory.java?rev=750807&r1=750806&r2=750807&view=diff ============================================================================== --- webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/factory/OMDOMFactory.java (original) +++ webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/factory/OMDOMFactory.java Fri Mar 6 08:22:25 2009 @@ -19,8 +19,6 @@ package org.apache.axiom.om.impl.dom.factory; - -import org.apache.axiom.om.OMAbstractFactory; import org.apache.axiom.om.OMAttribute; import org.apache.axiom.om.OMComment; import org.apache.axiom.om.OMContainer; @@ -71,9 +69,6 @@ * to reset the {...@link DocumentImpl} instance before processing the next document.</li> * <li>Instances of this class are not thread safe and using a single instance concurrently * will lead to undefined results.</li> - * <li>Since instances are not stateless, this class (as well as its subclasses) must - * not be used in conjunction with {...@link OMAbstractFactory}. In particular, - * the <tt>om.factory</tt> system property must not be set to this class.</li> * </ul> */ public class OMDOMFactory implements OMFactory { Modified: webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/factory/OMDOMMetaFactory.java URL: http://svn.apache.org/viewvc/webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/factory/OMDOMMetaFactory.java?rev=750807&r1=750806&r2=750807&view=diff ============================================================================== --- webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/factory/OMDOMMetaFactory.java (original) +++ webservices/commons/trunk/modules/axiom/modules/axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/factory/OMDOMMetaFactory.java Fri Mar 6 08:22:25 2009 @@ -26,7 +26,7 @@ import org.apache.axiom.soap.impl.dom.soap12.SOAP12Factory; /** - * Class encapsulating the DOOM implementation. + * Meta factory for the DOOM implementation. * <p> * As explained in {...@link OMDOMFactory}, OM factories for DOOM are not stateless. * Therefore {...@link #getOMFactory()}, {...@link #getSOAP11Factory()} and Modified: webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/factory/OMLinkedListMetaFactory.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/OMLinkedListMetaFactory.java?rev=750807&r1=750806&r2=750807&view=diff ============================================================================== --- webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/factory/OMLinkedListMetaFactory.java (original) +++ webservices/commons/trunk/modules/axiom/modules/axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/factory/OMLinkedListMetaFactory.java Fri Mar 6 08:22:25 2009 @@ -26,7 +26,7 @@ import org.apache.axiom.soap.impl.llom.soap12.SOAP12Factory; /** - * Class encapsulating the linked list OM implementation. + * Meta factory for the linked list OM implementation. * <p> * Since all OM factories for LLOM are stateless, {...@link #getOMFactory()}, * {...@link #getSOAP11Factory()} and {...@link #getSOAP12Factory()} will return the