Package org.opencms.repository
Class CmsRepositoryManager
- java.lang.Object
-
- org.opencms.repository.CmsRepositoryManager
-
public class CmsRepositoryManager extends java.lang.Object
The RepositoryManager keeps a list with all configuredI_CmsRepository
and can be used to get a repository by its name.The configuration of the repositories is done in the configuration file
opencms-importexport.xml
.- Since:
- 6.2.4
-
-
Constructor Summary
Constructors Constructor Description CmsRepositoryManager()
Creates a new instance for the resource manager, will be called by the vfs configuration manager.CmsRepositoryManager(boolean configured)
Creates a new unconfigured instance of the repository manager.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addRepositoryClass(I_CmsRepository repository)
Adds a new configured repository.static java.util.List<I_CmsResourceWrapper>
createResourceWrappersFromConfiguration(CmsParameterConfiguration config, java.lang.String paramName, org.apache.commons.logging.Log log)
Creates a list of resource wrappers from a collection of configuration parameters, for use in configuring repositories.java.util.Map<java.lang.String,java.lang.Object>
getAdditionalInfoForLogin(java.lang.String userName, java.lang.String password)
Gets the additional infos for the user who just logged in which is required for the repositories to work.java.util.List<I_CmsRepository>
getRepositories()
Returns the repositories.<REPO extends I_CmsRepository>
java.util.List<REPO>getRepositories(java.lang.Class<REPO> cls)
Gets a list of the repositories for the given superclass.I_CmsRepository
getRepository(java.lang.String name)
Returns the repository with the given name.<REPO extends I_CmsRepository>
REPOgetRepository(java.lang.String name, java.lang.Class<REPO> cls)
Gets a repository by name, but only if its class is a subclass of the class passed as a parameter.void
initConfiguration()
Initializes a configuration after all parameters have been added.void
initializeCms(CmsObject cms)
Initializes repositories using an admin CMS object.boolean
isConfigured()
Returns the configured.void
shutDown()
Shuts down the repository manager.
-
-
-
Constructor Detail
-
CmsRepositoryManager
public CmsRepositoryManager()
Creates a new instance for the resource manager, will be called by the vfs configuration manager.
-
CmsRepositoryManager
public CmsRepositoryManager(boolean configured)
Creates a new unconfigured instance of the repository manager.Is used if there are no repositories configured.
- Parameters:
configured
- determines if the repository manager was configured
-
-
Method Detail
-
createResourceWrappersFromConfiguration
public static java.util.List<I_CmsResourceWrapper> createResourceWrappersFromConfiguration(CmsParameterConfiguration config, java.lang.String paramName, org.apache.commons.logging.Log log) throws CmsConfigurationException
Creates a list of resource wrappers from a collection of configuration parameters, for use in configuring repositories.- Parameters:
config
- the configurationparamName
- the parameter namelog
- the logger to use for error messages- Returns:
- the list of resource wrappers
- Throws:
CmsConfigurationException
- if something goes wrong with reading the configuration
-
addRepositoryClass
public void addRepositoryClass(I_CmsRepository repository) throws CmsConfigurationException
Adds a new configured repository.- Parameters:
repository
- the repository to add- Throws:
CmsConfigurationException
- in case the resource manager configuration is already initialized
-
getAdditionalInfoForLogin
public java.util.Map<java.lang.String,java.lang.Object> getAdditionalInfoForLogin(java.lang.String userName, java.lang.String password)
Gets the additional infos for the user who just logged in which is required for the repositories to work.- Parameters:
userName
- the name of the logged in userpassword
- the password of the logged in user- Returns:
- the additional info entries which should be written to the user
-
getRepositories
public java.util.List<I_CmsRepository> getRepositories()
Returns the repositories.- Returns:
- the repositories
-
getRepositories
public <REPO extends I_CmsRepository> java.util.List<REPO> getRepositories(java.lang.Class<REPO> cls)
Gets a list of the repositories for the given superclass.- Parameters:
cls
- the superclass- Returns:
- the repositories for whose classes the given class is a superclass
-
getRepository
public I_CmsRepository getRepository(java.lang.String name)
Returns the repository with the given name.- Parameters:
name
- the name of the repository- Returns:
- the repository configured for that name
-
getRepository
public <REPO extends I_CmsRepository> REPO getRepository(java.lang.String name, java.lang.Class<REPO> cls)
Gets a repository by name, but only if its class is a subclass of the class passed as a parameter.Otherwise, null will be returned.
- Parameters:
name
- the repository namecls
- the class used to filter repositories- Returns:
- the repository with the given name, or null
-
initConfiguration
public void initConfiguration() throws CmsConfigurationException
Initializes a configuration after all parameters have been added.- Throws:
CmsConfigurationException
- if something goes wrong
-
initializeCms
public void initializeCms(CmsObject cms)
Initializes repositories using an admin CMS object.- Parameters:
cms
- the CMS object with admin privileges
-
isConfigured
public boolean isConfigured()
Returns the configured.- Returns:
- the configured
-
shutDown
public void shutDown()
Shuts down the repository manager.
-
-