public static AtomHandlerFactory newInstance() {
        try {
            return (AtomHandlerFactory) FactoryFinder.find(DEFAULT_PROPERTY_NAME, FALLBACK_IMPL_NAME);
        } catch (final ConfigurationError e) {
            LOG.error("An error occured while finding factory", e);
            throw new FactoryConfigurationError(e.getException(), e.getMessage());
        }
    }
public static AtomHandlerFactory newInstance ( ) { try { return ( AtomHandlerFactory ) FactoryFinder . find ( DEFAULT_PROPERTY_NAME , FALLBACK_IMPL_NAME ) ; } catch ( final ConfigurationError e ) { LOG . error ( "An error occured while finding factory" , e ) ; throw new FactoryConfigurationError ( e . getException ( ) , e . getMessage ( ) ) ; } }
Obtain a new instance of a <code>AtomHandlerFactory</code>. This static method creates a new
factory instance. This method uses the following ordered lookup procedure to determine the
<code>AtomHandlerFactory</code> implementation class to load:
<ul>
<li>
Use the <code>com.rometools.rome.propono.atom.server.AtomHandlerFactory</code> system
property.</li>
<li>
Use the properties file "/propono.properties" in the classpath. This configuration file is in
standard <code>java.util.Properties</code> format and contains the fully qualified name of
the implementation class with the key being the system property defined above.

The propono.properties file is read only once by Propono and it's values are then cached for
future use. If the file does not exist when the first attempt is made to read from it, no
further attempts are made to check for its existence. It is not possible to change the value
of any property in propono.properties after it has been read for the first time.</li>
<li>
If not available, to determine the classname. The Services API will look for a classname in
the file: <code>META-INF/services/com.rometools.rome.AtomHandlerFactory</code> in jars
available to the runtime.</li>
<li>
Platform default <code>AtomHandlerFactory</code> instance.</li>
</ul>

Once an application has obtained a reference to a <code>AtomHandlerFactory</code> it can use
the factory to configure and obtain parser instances.

@return New instance of a <code>AtomHandlerFactory</code>

@throws FactoryConfigurationError if the implementation is not available or cannot be
instantiated.