Class ProxyRepository
- java.lang.Object
-
- org.apache.jackrabbit.commons.AbstractRepository
-
- org.apache.jackrabbit.commons.repository.ProxyRepository
-
- All Implemented Interfaces:
Repository
- Direct Known Subclasses:
JNDIRepository
public class ProxyRepository extends AbstractRepository
Repository that proxies all method calls to another repository. The other repository is accessed lazily using arepository factory
.- Since:
- 1.4
-
-
Field Summary
-
Fields inherited from interface javax.jcr.Repository
IDENTIFIER_STABILITY, IDENTIFIER_STABILITY_INDEFINITE_DURATION, IDENTIFIER_STABILITY_METHOD_DURATION, IDENTIFIER_STABILITY_SAVE_DURATION, IDENTIFIER_STABILITY_SESSION_DURATION, LEVEL_1_SUPPORTED, LEVEL_2_SUPPORTED, NODE_TYPE_MANAGEMENT_AUTOCREATED_DEFINITIONS_SUPPORTED, NODE_TYPE_MANAGEMENT_INHERITANCE, NODE_TYPE_MANAGEMENT_INHERITANCE_MINIMAL, NODE_TYPE_MANAGEMENT_INHERITANCE_MULTIPLE, NODE_TYPE_MANAGEMENT_INHERITANCE_SINGLE, NODE_TYPE_MANAGEMENT_MULTIPLE_BINARY_PROPERTIES_SUPPORTED, NODE_TYPE_MANAGEMENT_MULTIVALUED_PROPERTIES_SUPPORTED, NODE_TYPE_MANAGEMENT_ORDERABLE_CHILD_NODES_SUPPORTED, NODE_TYPE_MANAGEMENT_OVERRIDES_SUPPORTED, NODE_TYPE_MANAGEMENT_PRIMARY_ITEM_NAME_SUPPORTED, NODE_TYPE_MANAGEMENT_PROPERTY_TYPES, NODE_TYPE_MANAGEMENT_RESIDUAL_DEFINITIONS_SUPPORTED, NODE_TYPE_MANAGEMENT_SAME_NAME_SIBLINGS_SUPPORTED, NODE_TYPE_MANAGEMENT_UPDATE_IN_USE_SUPORTED, NODE_TYPE_MANAGEMENT_VALUE_CONSTRAINTS_SUPPORTED, OPTION_ACCESS_CONTROL_SUPPORTED, OPTION_ACTIVITIES_SUPPORTED, OPTION_BASELINES_SUPPORTED, OPTION_JOURNALED_OBSERVATION_SUPPORTED, OPTION_LIFECYCLE_SUPPORTED, OPTION_LOCKING_SUPPORTED, OPTION_NODE_AND_PROPERTY_WITH_SAME_NAME_SUPPORTED, OPTION_NODE_TYPE_MANAGEMENT_SUPPORTED, OPTION_OBSERVATION_SUPPORTED, OPTION_QUERY_SQL_SUPPORTED, OPTION_RETENTION_SUPPORTED, OPTION_SHAREABLE_NODES_SUPPORTED, OPTION_SIMPLE_VERSIONING_SUPPORTED, OPTION_TRANSACTIONS_SUPPORTED, OPTION_UNFILED_CONTENT_SUPPORTED, OPTION_UPDATE_MIXIN_NODE_TYPES_SUPPORTED, OPTION_UPDATE_PRIMARY_NODE_TYPE_SUPPORTED, OPTION_VERSIONING_SUPPORTED, OPTION_WORKSPACE_MANAGEMENT_SUPPORTED, OPTION_XML_EXPORT_SUPPORTED, OPTION_XML_IMPORT_SUPPORTED, QUERY_FULL_TEXT_SEARCH_SUPPORTED, QUERY_JOINS, QUERY_JOINS_INNER, QUERY_JOINS_INNER_OUTER, QUERY_JOINS_NONE, QUERY_LANGUAGES, QUERY_STORED_QUERIES_SUPPORTED, QUERY_XPATH_DOC_ORDER, QUERY_XPATH_POS_INDEX, REP_NAME_DESC, REP_VENDOR_DESC, REP_VENDOR_URL_DESC, REP_VERSION_DESC, SPEC_NAME_DESC, SPEC_VERSION_DESC, WRITE_SUPPORTED
-
-
Constructor Summary
Constructors Constructor Description ProxyRepository(java.lang.String uri)
Creates a proxy for the repository accessible using the given repository URI.ProxyRepository(java.util.Map<java.lang.String,java.lang.String> parameters)
Creates a proxy for the repository (or repositories) accessible using the given repository parameters.ProxyRepository(RepositoryFactory factory)
Creates a proxy for the repository (or repositories) accessible through the given factory.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
getDescriptor(java.lang.String key)
Returns the descriptor with the given key from the proxied repository.java.lang.String[]
getDescriptorKeys()
Returns the descriptor keys of the proxied repository, or an empty array if the proxied repository can not be accessed.Value
getDescriptorValue(java.lang.String key)
Returns the value of the descriptor with the given key from the proxied repository.Value[]
getDescriptorValues(java.lang.String key)
Returns the values of the descriptor with the given key from the proxied repository.boolean
isSingleValueDescriptor(java.lang.String key)
Checks whether the given key identifies a valid single-valued descriptor key in the proxied repository.Session
login(Credentials credentials, java.lang.String workspace)
Logs in to the proxied repository and returns the resulting session.-
Methods inherited from class org.apache.jackrabbit.commons.AbstractRepository
isStandardDescriptor, login, login, login, login
-
-
-
-
Constructor Detail
-
ProxyRepository
public ProxyRepository(RepositoryFactory factory)
Creates a proxy for the repository (or repositories) accessible through the given factory.- Parameters:
factory
- repository factory
-
ProxyRepository
public ProxyRepository(java.util.Map<java.lang.String,java.lang.String> parameters)
Creates a proxy for the repository (or repositories) accessible using the given repository parameters.- Parameters:
parameters
- repository parameters
-
ProxyRepository
public ProxyRepository(java.lang.String uri)
Creates a proxy for the repository accessible using the given repository URI.- Parameters:
uri
- repository URI
-
-
Method Detail
-
getDescriptorKeys
public java.lang.String[] getDescriptorKeys()
Returns the descriptor keys of the proxied repository, or an empty array if the proxied repository can not be accessed.- Returns:
- descriptor keys (possibly empty)
-
isSingleValueDescriptor
public boolean isSingleValueDescriptor(java.lang.String key)
Checks whether the given key identifies a valid single-valued descriptor key in the proxied repository. Returnsfalse
if the proxied repository can not be accessed.- Parameters:
key
- a descriptor key.- Returns:
true
if the key identifies a valid single-valued descriptor in the proxied repository,false
otherwise
-
getDescriptor
public java.lang.String getDescriptor(java.lang.String key)
Returns the descriptor with the given key from the proxied repository. Returnsnull
if the descriptor does not exist or if the proxied repository can not be accessed.- Parameters:
key
- descriptor key- Returns:
- descriptor value, or
null
-
getDescriptorValue
public Value getDescriptorValue(java.lang.String key)
Returns the value of the descriptor with the given key from the proxied repository. Returnsnull
if the descriptor does not exist or if the proxied repository can not be accessed.- Parameters:
key
- descriptor key- Returns:
- descriptor value, or
null
-
getDescriptorValues
public Value[] getDescriptorValues(java.lang.String key)
Returns the values of the descriptor with the given key from the proxied repository. Returnsnull
if the descriptor does not exist or if the proxied repository can not be accessed.- Parameters:
key
- descriptor key- Returns:
- descriptor values, or
null
-
login
public Session login(Credentials credentials, java.lang.String workspace) throws RepositoryException
Logs in to the proxied repository and returns the resulting session.Note that the
Session.getRepository()
method of the resulting session will return the proxied repository, not this repository proxy!- Parameters:
credentials
- The credentials of the userworkspace
- the name of a workspace.- Returns:
- a valid session for the user to access the repository.
- Throws:
RepositoryException
- if the proxied repository can not be accessed, or if the login in the proxied repository fails
-
-