public interface JackrabbitSession extends Session
Session
interface.Modifier and Type | Field and Description |
---|---|
static String |
ACTION_ADD_PROPERTY
A constant representing the
add_property action string, used to
determine if this Session has permission to add a new property. |
static String |
ACTION_LOCKING
A constant representing the
locking action string,
used to determine if this Session has permission to lock or
unlock a node. |
static String |
ACTION_MODIFY_ACCESS_CONTROL
A constant representing the
modify_access_control action string,
used to determine if this Session has permission to modify
access control content at the given path. |
static String |
ACTION_MODIFY_PROPERTY
A constant representing the
modify_property action string, used to
determine if this Session has permission to modify a property. |
static String |
ACTION_NODE_TYPE_MANAGEMENT
A constant representing the
node_type_management action string,
used to determine if this Session has permission to write
node type information of a node. |
static String |
ACTION_READ_ACCESS_CONTROL
A constant representing the
read_access_control action string,
used to determine if this Session has permission to read
access control content at the given path. |
static String |
ACTION_REMOVE_NODE
A constant representing the
remove_node action string, used to
determine if this Session has permission to remove a node. |
static String |
ACTION_REMOVE_PROPERTY
A constant representing the
remove_property action string, used to
determine if this Session has permission to remove a property. |
static String |
ACTION_USER_MANAGEMENT
A constant representing the
user_management action string,
used to determine if this Session has permission to perform
user management operations at the given path. |
static String |
ACTION_VERSIONING
A constant representing the
versioning action string,
used to determine if this Session has permission to perform
version operations on a node. |
ACTION_ADD_NODE, ACTION_READ, ACTION_REMOVE, ACTION_SET_PROPERTY
Modifier and Type | Method and Description |
---|---|
Item |
getItemOrNull(String absPath)
Returns the node at the specified absolute path in the workspace.
|
Node |
getNodeOrNull(String absPath)
Returns the node at the specified absolute path in the workspace or
null if no such node exists. |
PrincipalManager |
getPrincipalManager()
Returns the
PrincipalManager for the current Session . |
Property |
getPropertyOrNull(String absPath)
Returns the property at the specified absolute path in the workspace or
null if no such node exists. |
UserManager |
getUserManager()
Returns the
UserManager for the current Session . |
boolean |
hasPermission(String absPath,
String... actions)
Returns
true if this Session has permission to
perform the specified actions at the specified absPath and
false otherwise. |
addLockToken, checkPermission, exportDocumentView, exportDocumentView, exportSystemView, exportSystemView, getAccessControlManager, getAttribute, getAttributeNames, getImportContentHandler, getItem, getLockTokens, getNamespacePrefix, getNamespacePrefixes, getNamespaceURI, getNode, getNodeByIdentifier, getNodeByUUID, getProperty, getRepository, getRetentionManager, getRootNode, getUserID, getValueFactory, getWorkspace, hasCapability, hasPendingChanges, hasPermission, impersonate, importXML, isLive, itemExists, logout, move, nodeExists, propertyExists, refresh, removeItem, removeLockToken, save, setNamespacePrefix
static final String ACTION_ADD_PROPERTY
add_property
action string, used to
determine if this Session
has permission to add a new property.static final String ACTION_MODIFY_PROPERTY
modify_property
action string, used to
determine if this Session
has permission to modify a property.static final String ACTION_REMOVE_PROPERTY
remove_property
action string, used to
determine if this Session
has permission to remove a property.static final String ACTION_REMOVE_NODE
remove_node
action string, used to
determine if this Session
has permission to remove a node.static final String ACTION_NODE_TYPE_MANAGEMENT
node_type_management
action string,
used to determine if this Session
has permission to write
node type information of a node.static final String ACTION_VERSIONING
versioning
action string,
used to determine if this Session
has permission to perform
version operations on a node.static final String ACTION_LOCKING
locking
action string,
used to determine if this Session
has permission to lock or
unlock a node.static final String ACTION_READ_ACCESS_CONTROL
read_access_control
action string,
used to determine if this Session
has permission to read
access control content at the given path.static final String ACTION_MODIFY_ACCESS_CONTROL
modify_access_control
action string,
used to determine if this Session
has permission to modify
access control content at the given path.static final String ACTION_USER_MANAGEMENT
user_management
action string,
used to determine if this Session
has permission to perform
user management operations at the given path.boolean hasPermission(@Nonnull String absPath, @Nonnull String... actions) throws RepositoryException
true
if this Session
has permission to
perform the specified actions at the specified absPath
and
false
otherwise.
The actions
parameter is a list of action strings. Apart
from the actions defined on Session
, this variant also allows
to specify the following additional actions to provide better permission
discovery:
{@code add_property}
: If hasPermission(path,
"add_property")
returns true
, then this Session
has
permission to add a new property at path
.{@code modify_property}
: If
hasPermission(path, "modify_property")
returns
true
, then this Session
has permission to change
a property at path
. {@code remove_property}
: If hasPermission(path,
"remove_property")
returns true
, then this Session
has
permission to remove a property at path
. {@code remove_node}
: If
hasPermission(path, "remove_node")
returns true
, then
this Session
has permission to remove a node at path
. {@code node_type_management}
: If
hasPermission(path, "node_type_management")
returns true
, then
this Session
has permission to explicitly set or change the node type
information associated with a node at path
. {@code versioning}
: If
hasPermission(path, "versioning")
returns true
, then
this Session
has permission to perform version related operations
on a node at path
. {@code locking}
: If
hasPermission(path, "locking")
returns true
, then
this Session
has permission to lock and unlock a node at path
. {@code read_access_control}
: If
hasPermission(path, "read_access_control")
returns true
, then
this Session
has permission to read access control content stored
at an item at path
. {@code modify_access_control}
: If
hasPermission(path, "modify_access_control")
returns true
, then
this Session
has permission to modify access control content
at an item at path
. {@code user_management}
: If
hasPermission(path, "user_management")
returns true
, then
this Session
has permission to perform user management operations
at an item at path
. true
if this Session
has permission to perform all
of the listed actions at the specified path.
The information returned through this method will only reflect the permission
status (both JCR defined and implementation-specific) and not
other restrictions that may exist, such as node type or other
implementation enforced constraints. For example, even though
hasPermission
may indicate that a particular Session
may
add a property at /A/B/C
, the node type of the node at /A/B
may prevent the addition of a property called C
.
absPath
- an absolute path.actions
- one or serveral actions.true
if this Session
has permission to
perform the specified actions at the specified
absPath
.RepositoryException
- if an error occurs.Session.hasPermission(String, String)
PrincipalManager getPrincipalManager() throws AccessDeniedException, UnsupportedRepositoryOperationException, RepositoryException
PrincipalManager
for the current Session
.PrincipalManager
associated with this Session
.AccessDeniedException
- If the session lacks privileges to access
the principal manager or principals in general.UnsupportedRepositoryOperationException
- If principal management
is not supported.RepositoryException
- If another error occurs.PrincipalManager
UserManager getUserManager() throws AccessDeniedException, UnsupportedRepositoryOperationException, RepositoryException
UserManager
for the current Session
.UserManager
associated with this Session
.AccessDeniedException
- If this session is not allowed to
to access user data.UnsupportedRepositoryOperationException
- If user management is
not supported.RepositoryException
- If another error occurs.UserManager
Item getItemOrNull(String absPath) throws RepositoryException
null
.absPath
- An absolute path.Item
or null
.RepositoryException
- if another error occurs.Property getPropertyOrNull(String absPath) throws RepositoryException
null
if no such node exists.absPath
- An absolute path.Property
or null
.RepositoryException
- if another error occurs.Node getNodeOrNull(String absPath) throws RepositoryException
null
if no such node exists.absPath
- An absolute path.Node
or null
.RepositoryException
- If another error occurs.Copyright © 2004–2021 The Apache Software Foundation. All rights reserved.