org.xcmis.spi.model
Class PermissionMapping

java.lang.Object
  extended by org.xcmis.spi.model.PermissionMapping

public final class PermissionMapping
extends Object

Mapping of actions that can be performed to required permissions. Mapping table contains key-permissions pairs. Because several allowable actions may require permissions on more than one object – for example, moving a document from one folder to another may require permissions on the document and each of the folders – the mapping table is defined in terms of permission "keys", where each key combines the name of the allowable action as the object for which the principal needs the required permission. For example – the "canMoveObject.Source" key indicates the permissions that the principal must have on the "source folder" to move an object from that folder into another folder. Permissions represented as set of one or more permissions that the principal must have to be allowed to perform action.

Version:
$Id: $
Author:
Andrey Parfonov

Field Summary
static String CAN_ADD_POLICY_OBJECT
           
static String CAN_ADD_POLICY_POLICY
           
static String CAN_ADD_TO_FOLDER_FOLDER
           
static String CAN_ADD_TO_FOLDER_OBJECT
           
static String CAN_APPLY_ACL_OBJECT
           
static String CAN_CANCEL_CHECKOUT_DOCUMENT
           
static String CAN_CHECKIN_DOCUMENT
           
static String CAN_CHECKOUT_DOCUMENT
           
static String CAN_CREATE_DOCUMENT_FOLDER
           
static String CAN_CREATE_FOLDER_FOLDER
           
static String CAN_CREATE_RELATIONSHIP_SOURCE
           
static String CAN_CREATE_RELATIONSHIP_TARGET
           
static String CAN_DELETE_CONTENT_DOCUMENT
           
static String CAN_DELETE_FOLDER
           
static String CAN_DELETE_OBJECT
           
static String CAN_DELETE_TREE_FOLDER
           
static String CAN_GET_ACL_OBJECT
           
static String CAN_GET_ALL_VERSIONS_DOCUMENT
           
static String CAN_GET_APPLIED_POLICIES_OBJECT
           
static String CAN_GET_CHILDREN_FOLDER
           
static String CAN_GET_CONTENT_STREAM_OBJECT
           
static String CAN_GET_DESCENDENTS_FOLDER
           
static String CAN_GET_FOLDER_PARENT_FOLDER
           
static String CAN_GET_FOLDER_TREE_FOLDER
           
static String CAN_GET_OBJECT_PARENTS_OBJECT
           
static String CAN_GET_OBJECT_RELATIONSHIPS_OBJECT
           
static String CAN_GET_PROPERTIES_OBJECT
           
static String CAN_GET_RENDITIONS_OBJECT
           
static String CAN_MOVE_OBJECT_OBJECT
           
static String CAN_MOVE_OBJECT_SOURCE
           
static String CAN_MOVE_OBJECT_TARGET
           
static String CAN_REMOVE_OBJECT_FROM_FOLDER_FOLDER
           
static String CAN_REMOVE_OBJECT_FROM_FOLDER_OBJECT
           
static String CAN_REMOVE_POLICY_OBJECT
           
static String CAN_REMOVE_POLICY_POLICY
           
static String CAN_SET_CONTENT_DOCUMENT
           
static String CAN_UPDATE_PROPERTIES_OBJECT
           
static Collection<String> DEFAULT_KEYS
           
 
Constructor Summary
PermissionMapping()
           
PermissionMapping(Map<String,Collection<String>> map)
           
 
Method Summary
 Map<String,Collection<String>> getAll()
           
 Collection<String> getPermissions(String key)
           
 void put(String key, Collection<String> permissions)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CAN_GET_DESCENDENTS_FOLDER

public static final String CAN_GET_DESCENDENTS_FOLDER
See Also:
Constant Field Values

CAN_GET_FOLDER_TREE_FOLDER

public static final String CAN_GET_FOLDER_TREE_FOLDER
See Also:
Constant Field Values

CAN_GET_CHILDREN_FOLDER

public static final String CAN_GET_CHILDREN_FOLDER
See Also:
Constant Field Values

CAN_GET_OBJECT_PARENTS_OBJECT

public static final String CAN_GET_OBJECT_PARENTS_OBJECT
See Also:
Constant Field Values

CAN_GET_FOLDER_PARENT_FOLDER

public static final String CAN_GET_FOLDER_PARENT_FOLDER
See Also:
Constant Field Values

CAN_CREATE_DOCUMENT_FOLDER

public static final String CAN_CREATE_DOCUMENT_FOLDER
See Also:
Constant Field Values

CAN_CREATE_FOLDER_FOLDER

public static final String CAN_CREATE_FOLDER_FOLDER
See Also:
Constant Field Values

CAN_CREATE_RELATIONSHIP_SOURCE

public static final String CAN_CREATE_RELATIONSHIP_SOURCE
See Also:
Constant Field Values

CAN_CREATE_RELATIONSHIP_TARGET

public static final String CAN_CREATE_RELATIONSHIP_TARGET
See Also:
Constant Field Values

CAN_GET_PROPERTIES_OBJECT

public static final String CAN_GET_PROPERTIES_OBJECT
See Also:
Constant Field Values

CAN_GET_CONTENT_STREAM_OBJECT

public static final String CAN_GET_CONTENT_STREAM_OBJECT
See Also:
Constant Field Values

CAN_UPDATE_PROPERTIES_OBJECT

public static final String CAN_UPDATE_PROPERTIES_OBJECT
See Also:
Constant Field Values

CAN_MOVE_OBJECT_OBJECT

public static final String CAN_MOVE_OBJECT_OBJECT
See Also:
Constant Field Values

CAN_MOVE_OBJECT_TARGET

public static final String CAN_MOVE_OBJECT_TARGET
See Also:
Constant Field Values

CAN_MOVE_OBJECT_SOURCE

public static final String CAN_MOVE_OBJECT_SOURCE
See Also:
Constant Field Values

CAN_DELETE_OBJECT

public static final String CAN_DELETE_OBJECT
See Also:
Constant Field Values

CAN_DELETE_FOLDER

public static final String CAN_DELETE_FOLDER
See Also:
Constant Field Values

CAN_DELETE_TREE_FOLDER

public static final String CAN_DELETE_TREE_FOLDER
See Also:
Constant Field Values

CAN_SET_CONTENT_DOCUMENT

public static final String CAN_SET_CONTENT_DOCUMENT
See Also:
Constant Field Values

CAN_DELETE_CONTENT_DOCUMENT

public static final String CAN_DELETE_CONTENT_DOCUMENT
See Also:
Constant Field Values

CAN_GET_RENDITIONS_OBJECT

public static final String CAN_GET_RENDITIONS_OBJECT
See Also:
Constant Field Values

CAN_ADD_TO_FOLDER_OBJECT

public static final String CAN_ADD_TO_FOLDER_OBJECT
See Also:
Constant Field Values

CAN_ADD_TO_FOLDER_FOLDER

public static final String CAN_ADD_TO_FOLDER_FOLDER
See Also:
Constant Field Values

CAN_REMOVE_OBJECT_FROM_FOLDER_OBJECT

public static final String CAN_REMOVE_OBJECT_FROM_FOLDER_OBJECT
See Also:
Constant Field Values

CAN_REMOVE_OBJECT_FROM_FOLDER_FOLDER

public static final String CAN_REMOVE_OBJECT_FROM_FOLDER_FOLDER
See Also:
Constant Field Values

CAN_CHECKOUT_DOCUMENT

public static final String CAN_CHECKOUT_DOCUMENT
See Also:
Constant Field Values

CAN_CANCEL_CHECKOUT_DOCUMENT

public static final String CAN_CANCEL_CHECKOUT_DOCUMENT
See Also:
Constant Field Values

CAN_CHECKIN_DOCUMENT

public static final String CAN_CHECKIN_DOCUMENT
See Also:
Constant Field Values

CAN_GET_ALL_VERSIONS_DOCUMENT

public static final String CAN_GET_ALL_VERSIONS_DOCUMENT
See Also:
Constant Field Values

CAN_GET_OBJECT_RELATIONSHIPS_OBJECT

public static final String CAN_GET_OBJECT_RELATIONSHIPS_OBJECT
See Also:
Constant Field Values

CAN_ADD_POLICY_OBJECT

public static final String CAN_ADD_POLICY_OBJECT
See Also:
Constant Field Values

CAN_ADD_POLICY_POLICY

public static final String CAN_ADD_POLICY_POLICY
See Also:
Constant Field Values

CAN_REMOVE_POLICY_OBJECT

public static final String CAN_REMOVE_POLICY_OBJECT
See Also:
Constant Field Values

CAN_REMOVE_POLICY_POLICY

public static final String CAN_REMOVE_POLICY_POLICY
See Also:
Constant Field Values

CAN_GET_APPLIED_POLICIES_OBJECT

public static final String CAN_GET_APPLIED_POLICIES_OBJECT
See Also:
Constant Field Values

CAN_GET_ACL_OBJECT

public static final String CAN_GET_ACL_OBJECT
See Also:
Constant Field Values

CAN_APPLY_ACL_OBJECT

public static final String CAN_APPLY_ACL_OBJECT
See Also:
Constant Field Values

DEFAULT_KEYS

public static final Collection<String> DEFAULT_KEYS
Constructor Detail

PermissionMapping

public PermissionMapping(Map<String,Collection<String>> map)

PermissionMapping

public PermissionMapping()
Method Detail

put

public void put(String key,
                Collection<String> permissions)
Parameters:
key - permission key
permissions - set of permission needed

getPermissions

public Collection<String> getPermissions(String key)
Parameters:
key - permission key
Returns:
set of permission needed to perform action

getAll

public Map<String,Collection<String>> getAll()


Copyright © 2010 eXo Platform SAS. All Rights Reserved.