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/03/06 09:22:26 UTC
svn commit: r750807 - in /webservices/commons/trunk/modules/axiom/modules:
axiom-api/src/main/java/org/apache/axiom/om/
axiom-dom/src/main/java/org/apache/axiom/om/impl/dom/factory/
axiom-impl/src/main/java/org/apache/axiom/om/impl/llom/factory/
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