org.apache.slide.common
Class NamespaceConfig

java.lang.Object
  |
  +--org.apache.slide.common.NamespaceConfig

public final class NamespaceConfig
extends java.lang.Object

Configuration of the Namespace.

Version:
$Revision: 1.15 $
Author:
Remy Maucherat

Field Summary
static java.lang.String ACTION_ROLE
           
protected  boolean autoCreateUsers
          Automatically create users.
protected  java.lang.String autoCreateUsersRole
          Roles implementation to be used for automatically created users.
static java.lang.String BASE_ROLE
           
protected  ContentInterceptor[] contentInterceptors
          Content interceptors.
protected  ActionNode createObjectAction
          Create object action.
protected  ActionNode createRevisionContentAction
          Create revision content action.
protected  ActionNode createRevisionMetadataAction
          Create revision metadata action.
protected  ActionNode defaultAction
          Default action.
protected  java.util.Hashtable defaultProperties
          List of default properties.
protected static java.util.Vector emptyVector
          Empty vector.
protected  java.lang.String filesPath
          File path.
protected  ActionNode grantPermissionAction
          Grant permission action.
protected  java.lang.String guestPath
          Guest user path.
protected  ActionNode killLockAction
          Kill lock action.
static java.lang.String LINK_ROLE
           
protected  ActionNode lockObjectAction
          Lock object action.
protected  ActionNode modifyRevisionContentAction
          Modify revision content action.
protected  ActionNode modifyRevisionMetadataAction
          Modify revision metadata action.
static java.lang.String NOBODY
          Base role names.
static java.lang.String NOBODY_ROLE
           
protected  java.util.Hashtable parameters
          Additional parameters.
protected  ActionNode readLocksAction
          Read locks action.
protected  ActionNode readObjectAction
          Read object action.
protected  ActionNode readPermissionsAction
          Read permissions action.
protected  ActionNode readRevisionContentAction
          Read revision content action.
protected  ActionNode readRevisionMetadataAction
          Read revision metadata action.
protected  ActionNode removeObjectAction
          Remove object action.
protected  ActionNode removeRevisionContentAction
          Remove revision content action.
protected  ActionNode removeRevisionMetadataAction
          Remove revision metadata action.
protected  ActionNode revokePermissionAction
          Revoke permission action.
protected  java.util.Hashtable roleClassMappings
          Role interface -> role name mappings.
protected  java.util.Hashtable roleMappings
          Role name -> role interface mappings.
protected  java.lang.String usersPath
          Users path.
 
Constructor Summary
NamespaceConfig()
           
 
Method Summary
protected  void addDefaultProperty(java.lang.String role, java.lang.String name, java.lang.String value, java.lang.String namespace)
          Add a new default property.
protected  void addParameter(java.lang.String name, java.lang.String value)
          Add a new parameter.
protected  void addRoleMapping(java.lang.String name, java.lang.String value)
          Add a new role mapping.
protected  ActionNode getActionNode(Namespace namespace, java.lang.String actionPath)
          Retrieve an action node.
 java.lang.String getAutoCreateUsersRole()
          Get the class name of the role which will be used to create nodes which are automatically created when isAutoCreateUsers() returns true.
(package private)  ContentInterceptor[] getContentInterceptors()
          Get content interceptors.
 ActionNode getCreateObjectAction()
          Create object action accessor.
 ActionNode getCreateRevisionContentAction()
          Create revision content accessor.
 ActionNode getCreateRevisionMetadataAction()
          Create revision metadata accessor.
 ActionNode getDefaultAction()
          Default action accessor.
 java.util.Enumeration getDefaultProperties(java.lang.String role)
          Get default properties for a given role.
 java.lang.String getFilesPath()
          Files path accessor.
 ActionNode getGrantPermissionAction()
          Grant permission accessor.
 java.lang.String getGuestPath()
          Guest path accessor.
 ActionNode getKillLockAction()
          Kill lock accessor.
 ActionNode getLockObjectAction()
          Lock object accessor.
 ActionNode getModifyRevisionContentAction()
          Modify revision content accessor.
 ActionNode getModifyRevisionMetadataAction()
          Modify revision metadata accessor.
 java.lang.String getParameter(java.lang.String name)
          Get parameter value.
 ActionNode getReadLocksAction()
          Read locks accessor.
 ActionNode getReadObjectAction()
          Read object action accessor.
 ActionNode getReadPermissionsAction()
          Read permissions accessor.
 ActionNode getReadRevisionContentAction()
          Read revision content accessor.
 ActionNode getReadRevisionMetadataAction()
          Read revision metadata accessor.
 ActionNode getRemoveObjectAction()
          Remove object accessor.
 ActionNode getRemoveRevisionContentAction()
          Remove revision content accessor.
 ActionNode getRemoveRevisionMetadataAction()
          Remove revision metadata accessor.
 ActionNode getRevokePermissionAction()
          Revoke permission accessor.
 java.lang.String getRoleMapping(java.lang.String name)
          Get role mapping.
 java.lang.String getUsersPath()
          Users path accessor.
(package private)  void initializeAsDummyConfig(Namespace namespace)
          Create a dummy config, used to create the base namespace data.
(package private)  void initializeNamespaceConfig(Namespace namespace, Configuration config)
          Initialize the Namespace configuration using the given Configuration object.
(package private)  void initializeNamespaceParameters(Namespace namespace, Configuration config)
          Initialize the Namespace configuration using the given Configuration object.
 boolean isAutoCreateUsers()
          Is automcatic user creation active ?
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NOBODY

public static final java.lang.String NOBODY
Base role names.

NOBODY_ROLE

public static final java.lang.String NOBODY_ROLE

BASE_ROLE

public static final java.lang.String BASE_ROLE

ACTION_ROLE

public static final java.lang.String ACTION_ROLE

LINK_ROLE

public static final java.lang.String LINK_ROLE

defaultAction

protected ActionNode defaultAction
Default action.

readObjectAction

protected ActionNode readObjectAction
Read object action.

createObjectAction

protected ActionNode createObjectAction
Create object action. Equivalent to createChildAction.

removeObjectAction

protected ActionNode removeObjectAction
Remove object action.

grantPermissionAction

protected ActionNode grantPermissionAction
Grant permission action.

revokePermissionAction

protected ActionNode revokePermissionAction
Revoke permission action.

readPermissionsAction

protected ActionNode readPermissionsAction
Read permissions action.

lockObjectAction

protected ActionNode lockObjectAction
Lock object action.

killLockAction

protected ActionNode killLockAction
Kill lock action.

readLocksAction

protected ActionNode readLocksAction
Read locks action.

createRevisionMetadataAction

protected ActionNode createRevisionMetadataAction
Create revision metadata action.

modifyRevisionMetadataAction

protected ActionNode modifyRevisionMetadataAction
Modify revision metadata action.

removeRevisionMetadataAction

protected ActionNode removeRevisionMetadataAction
Remove revision metadata action.

readRevisionMetadataAction

protected ActionNode readRevisionMetadataAction
Read revision metadata action.

readRevisionContentAction

protected ActionNode readRevisionContentAction
Read revision content action.

createRevisionContentAction

protected ActionNode createRevisionContentAction
Create revision content action.

modifyRevisionContentAction

protected ActionNode modifyRevisionContentAction
Modify revision content action.

removeRevisionContentAction

protected ActionNode removeRevisionContentAction
Remove revision content action.

usersPath

protected java.lang.String usersPath
Users path.

guestPath

protected java.lang.String guestPath
Guest user path.

filesPath

protected java.lang.String filesPath
File path.

parameters

protected java.util.Hashtable parameters
Additional parameters.

roleMappings

protected java.util.Hashtable roleMappings
Role name -> role interface mappings. Note : One name is associated to only one interface.

roleClassMappings

protected java.util.Hashtable roleClassMappings
Role interface -> role name mappings. Note : One interface can be associated to multiple names, in which case only one is stored here.

defaultProperties

protected java.util.Hashtable defaultProperties
List of default properties. Role name -> Vector[NodeProperty].

emptyVector

protected static java.util.Vector emptyVector
Empty vector. Don't add stuff there.

contentInterceptors

protected ContentInterceptor[] contentInterceptors
Content interceptors.

autoCreateUsers

protected boolean autoCreateUsers
Automatically create users.

autoCreateUsersRole

protected java.lang.String autoCreateUsersRole
Roles implementation to be used for automatically created users.
Constructor Detail

NamespaceConfig

public NamespaceConfig()
Method Detail

getDefaultAction

public ActionNode getDefaultAction()
Default action accessor.
Returns:
ActionNode Default action

getReadObjectAction

public ActionNode getReadObjectAction()
Read object action accessor.
Returns:
ActionNode Read object action

getCreateObjectAction

public ActionNode getCreateObjectAction()
Create object action accessor.
Returns:
ActionNode Create object action

getRemoveObjectAction

public ActionNode getRemoveObjectAction()
Remove object accessor.
Returns:
ActionNode Remove object action

getGrantPermissionAction

public ActionNode getGrantPermissionAction()
Grant permission accessor.
Returns:
ActionNode Grant permission action

getRevokePermissionAction

public ActionNode getRevokePermissionAction()
Revoke permission accessor.
Returns:
ActionNode Revoke permission action

getReadPermissionsAction

public ActionNode getReadPermissionsAction()
Read permissions accessor.
Returns:
ActionNode Read permissions action

getLockObjectAction

public ActionNode getLockObjectAction()
Lock object accessor.
Returns:
ActionNode Lock object action

getKillLockAction

public ActionNode getKillLockAction()
Kill lock accessor.
Returns:
ActionNode Kill lock action

getReadLocksAction

public ActionNode getReadLocksAction()
Read locks accessor.
Returns:
ActionNode Read locks action

getCreateRevisionMetadataAction

public ActionNode getCreateRevisionMetadataAction()
Create revision metadata accessor.
Returns:
ActionNode Create revision metadata action

getReadRevisionMetadataAction

public ActionNode getReadRevisionMetadataAction()
Read revision metadata accessor.
Returns:
ActionNode Read revision metadata action

getModifyRevisionMetadataAction

public ActionNode getModifyRevisionMetadataAction()
Modify revision metadata accessor.
Returns:
ActionNode Modify revision metadata action

getRemoveRevisionMetadataAction

public ActionNode getRemoveRevisionMetadataAction()
Remove revision metadata accessor.
Returns:
ActionNode Remove revision metadata action

getReadRevisionContentAction

public ActionNode getReadRevisionContentAction()
Read revision content accessor.
Returns:
ActionNode Read revision content action

getCreateRevisionContentAction

public ActionNode getCreateRevisionContentAction()
Create revision content accessor.
Returns:
ActionNode Create revision content action

getModifyRevisionContentAction

public ActionNode getModifyRevisionContentAction()
Modify revision content accessor.
Returns:
ActionNode Modify revision content action

getRemoveRevisionContentAction

public ActionNode getRemoveRevisionContentAction()
Remove revision content accessor.
Returns:
ActionNode Remove revision content action

getUsersPath

public java.lang.String getUsersPath()
Users path accessor.
Returns:
String Users path

getGuestPath

public java.lang.String getGuestPath()
Guest path accessor.
Returns:
String Guest path

getFilesPath

public java.lang.String getFilesPath()
Files path accessor.
Returns:
String Files path

getDefaultProperties

public java.util.Enumeration getDefaultProperties(java.lang.String role)
Get default properties for a given role.
Returns:
Enumeration of properties

getContentInterceptors

ContentInterceptor[] getContentInterceptors()
Get content interceptors.

getParameter

public java.lang.String getParameter(java.lang.String name)
Get parameter value.
Parameters:
name - Parameter name
Returns:
String Parameter value

getRoleMapping

public java.lang.String getRoleMapping(java.lang.String name)
Get role mapping. If the interface name is given, one of the names is returned. If the name is given, the interface name is returned.
Parameters:
name - Role name (or interface name)
Returns:
String Role interface name (or name)

isAutoCreateUsers

public boolean isAutoCreateUsers()
Is automcatic user creation active ?

getAutoCreateUsersRole

public java.lang.String getAutoCreateUsersRole()
Get the class name of the role which will be used to create nodes which are automatically created when isAutoCreateUsers() returns true.

initializeNamespaceConfig

void initializeNamespaceConfig(Namespace namespace,
                               Configuration config)
                         throws InvalidNamespaceConfigurationException,
                                SlideException
Initialize the Namespace configuration using the given Configuration object.
Parameters:
namespace - Namespace on which we are trying to load the config
config - Castor Config object
Throws:
InvalidNamespaceConfigurationException - Namespace configuration is invalid
SlideException - One of the action nodes doesn't exist

initializeNamespaceParameters

void initializeNamespaceParameters(Namespace namespace,
                                   Configuration config)
                             throws InvalidNamespaceConfigurationException,
                                    SlideException
Initialize the Namespace configuration using the given Configuration object.
Parameters:
namespace - Namespace on which we are trying to load the config
config - Castor Config object
Throws:
InvalidNamespaceConfigurationException - Namespace configuration is invalid
SlideException - One of the action nodes doesn't exist

initializeAsDummyConfig

void initializeAsDummyConfig(Namespace namespace)
                       throws InvalidNamespaceConfigurationException
Create a dummy config, used to create the base namespace data.
Parameters:
namespace - Namespace
Throws:
InvalidNamespaceConfigurationException - Namespace configuration is invalid

addParameter

protected void addParameter(java.lang.String name,
                            java.lang.String value)
Add a new parameter.
Parameters:
name - Parameter name
value - Parameter value

addDefaultProperty

protected void addDefaultProperty(java.lang.String role,
                                  java.lang.String name,
                                  java.lang.String value,
                                  java.lang.String namespace)
Add a new default property.
Parameters:
role - Role
name - Property name
value - Property value
namespace - Property namespace

addRoleMapping

protected void addRoleMapping(java.lang.String name,
                              java.lang.String value)
Add a new role mapping.
Parameters:
name - Role mapping name
value - Role mapping value

getActionNode

protected ActionNode getActionNode(Namespace namespace,
                                   java.lang.String actionPath)
                            throws InvalidNamespaceConfigurationException,
                                   SlideException
Retrieve an action node.
Parameters:
actionPath - Path of the action
ActionNode - Action object