org.apache.jackrabbit.core.config
Class RepositoryConfig

java.lang.Object
  extended byorg.apache.jackrabbit.core.config.RepositoryConfig

public class RepositoryConfig
extends Object

Repository configuration. This configuration class is used to create configured repository objects.

The contained configuration information are: the home directory and name of the repository, the access manager, file system, and versioning configurations, the workspace directory, the default workspace name, and the workspace configuration template. In addition the workspace configuration object keeps track of all configured workspaces.


Method Summary
static RepositoryConfig create(InputSource xml, String home)
          Parses the given repository configuration document and returns the parsed and initialized repository configuration.
static RepositoryConfig create(InputStream input, String home)
          Convenience method that wraps the configuration input stream into an InputSource and invokes the create(InputSource, String) method.
static RepositoryConfig create(String file, String home)
          Convenience method that wraps the configuration file name into an InputSource and invokes the create(InputSource, String) method.
static RepositoryConfig create(URI uri, String home)
          Convenience method that wraps the configuration URI into an InputSource and invokes the create(InputSource, String) method.
 WorkspaceConfig createWorkspaceConfig(String name)
          Creates a new workspace configuration with the specified name.
 AccessManagerConfig getAccessManagerConfig()
          Returns the repository access manager configuration.
 String getAppName()
          Returns the repository name.
 String getDefaultWorkspaceName()
          Returns the name of the default workspace.
 FileSystem getFileSystem()
          Returns the repository file system implementation.
 String getHomeDir()
          Returns the repository home directory.
 LoginModuleConfig getLoginModuleConfig()
          Returns the repository login module configuration.
 VersioningConfig getVersioningConfig()
          Returns the repository versioning configuration.
 WorkspaceConfig getWorkspaceConfig(String name)
          Returns the configuration of the specified workspace.
 Collection getWorkspaceConfigs()
          Returns all workspace configurations.
 String getWorkspacesConfigRootDir()
          Returns the workspace root directory.
protected  void init()
          Initializes the repository configuration.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

create

public static RepositoryConfig create(String file,
                                      String home)
                               throws ConfigurationException
Convenience method that wraps the configuration file name into an InputSource and invokes the create(InputSource, String) method.

Parameters:
file - repository configuration file name
home - repository home directory
Returns:
repository configuration
Throws:
ConfigurationException - on configuration errors
See Also:
create(InputSource, String)

create

public static RepositoryConfig create(URI uri,
                                      String home)
                               throws ConfigurationException
Convenience method that wraps the configuration URI into an InputSource and invokes the create(InputSource, String) method.

Parameters:
uri - repository configuration URI
home - repository home directory
Returns:
repository configuration
Throws:
ConfigurationException - on configuration errors
See Also:
create(InputSource, String)

create

public static RepositoryConfig create(InputStream input,
                                      String home)
                               throws ConfigurationException
Convenience method that wraps the configuration input stream into an InputSource and invokes the create(InputSource, String) method.

Parameters:
input - repository configuration input stream
home - repository home directory
Returns:
repository configuration
Throws:
ConfigurationException - on configuration errors
See Also:
create(InputSource, String)

create

public static RepositoryConfig create(InputSource xml,
                                      String home)
                               throws ConfigurationException
Parses the given repository configuration document and returns the parsed and initialized repository configuration. The given repository home directory path will be used as the ${rep.home} parser variable.

Note that in addition to parsing the repository configuration, this method also initializes the configuration (creates the configured directories, etc.). The ConfigurationParser class should be used directly to just parse the configuration.

Parameters:
xml - repository configuration document
home - repository home directory
Returns:
repository configuration
Throws:
ConfigurationException - on configuration errors

init

protected void init()
             throws ConfigurationException
Initializes the repository configuration. This method first initializes the repository file system and versioning configurations and then loads and initializes the configurations for all available workspaces.

Throws:
ConfigurationException - on initialization errors

createWorkspaceConfig

public WorkspaceConfig createWorkspaceConfig(String name)
                                      throws ConfigurationException
Creates a new workspace configuration with the specified name. This method creates a workspace configuration subdirectory, copies the workspace configuration template into it, and finally adds the created workspace configuration to the repository. The initialized workspace configuration object is returned to the caller.

Parameters:
name - workspace name
Returns:
created workspace configuration
Throws:
ConfigurationException - if creating the workspace configuration failed

getHomeDir

public String getHomeDir()
Returns the repository home directory.

Returns:
repository home directory

getFileSystem

public FileSystem getFileSystem()
Returns the repository file system implementation.

Returns:
file system implementation

getAppName

public String getAppName()
Returns the repository name. The repository name can be used for JAAS app-entry configuration.

Returns:
repository name

getAccessManagerConfig

public AccessManagerConfig getAccessManagerConfig()
Returns the repository access manager configuration.

Returns:
access manager configuration

getLoginModuleConfig

public LoginModuleConfig getLoginModuleConfig()
Returns the repository login module configuration.

Returns:
login module configuration, or null if standard JAAS mechanism should be used.

getWorkspacesConfigRootDir

public String getWorkspacesConfigRootDir()
Returns the workspace root directory.

Returns:
workspace root directory

getDefaultWorkspaceName

public String getDefaultWorkspaceName()
Returns the name of the default workspace.

Returns:
name of the default workspace

getWorkspaceConfigs

public Collection getWorkspaceConfigs()
Returns all workspace configurations.

Returns:
workspace configurations

getWorkspaceConfig

public WorkspaceConfig getWorkspaceConfig(String name)
Returns the configuration of the specified workspace.

Parameters:
name - workspace name
Returns:
workspace configuration, or null if the named workspace does not exist

getVersioningConfig

public VersioningConfig getVersioningConfig()
Returns the repository versioning configuration.

Returns:
versioning configuration


Copyright © 2004-2005 The Apache Software Foundation. All Rights Reserved.