Class JndiRepositoryFactory
- java.lang.Object
-
- org.apache.jackrabbit.commons.JndiRepositoryFactory
-
- All Implemented Interfaces:
RepositoryFactory
- Direct Known Subclasses:
GenericRepositoryFactory
public class JndiRepositoryFactory extends java.lang.Object implements RepositoryFactory
JNDI-based JCR repository factory. This factory looks upRepositoryinstances from JNDI directories based on the following parameters:org.apache.jackrabbit.repository.jndi.name- The value of this parameter is used as a JNDI name for looking up the repository.
org.apache.jackrabbit.repository.uri- If the URI scheme is "jndi", then the remainder of the URI is used as a JNDI name for looking up the repository.
All the other repository parameters are passed as the environment of the
initial JNDI context.Clients should normally only use this class through the Java Service Provider mechanism. See the getRepository utility methods in
JcrUtilsfor an easy way to do that.- Since:
- Apache Jackrabbit 2.0
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringJNDI_NAMEThe JNDI name parameter name.
-
Constructor Summary
Constructors Constructor Description JndiRepositoryFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description RepositorygetRepository(java.util.Map parameters)Attempts to establish a connection to a repository using the givenparameters.
-
-
-
Field Detail
-
JNDI_NAME
public static final java.lang.String JNDI_NAME
The JNDI name parameter name.- See Also:
- Constant Field Values
-
-
Method Detail
-
getRepository
public Repository getRepository(java.util.Map parameters) throws RepositoryException
Description copied from interface:RepositoryFactoryAttempts to establish a connection to a repository using the givenparameters.Parameters are passed in a
MapofStringkey/value pairs. The keys are not specified by JCR and are implementation specific. However, vendors should use keys that are namespace qualified in the Java package style to distinguish their key names. For example an address parameter might becom.vendor.address.The implementation must return
nullif it does not understand the given parameters. The implementation may also returnnullif a default repository instance is requested (indicated bynullparameters) and this factory is not able to identify a default repository.An implementation of this method must be thread-safe.
- Specified by:
getRepositoryin interfaceRepositoryFactory- Parameters:
parameters- map of string key/value pairs as repository arguments ornullif none are provided and a client wishes to connect to a default repository.- Returns:
- a repository instance or
nullif this implementation does not understand the passedparameters. - Throws:
RepositoryException- if if no suitable repository is found or another error occurs.
-
-