Class PrivilegeBitsProvider
- java.lang.Object
-
- org.apache.jackrabbit.oak.spi.security.privilege.PrivilegeBitsProvider
-
- All Implemented Interfaces:
PrivilegeConstants
public final class PrivilegeBitsProvider extends java.lang.Object implements PrivilegeConstants
Allows to obtain the internalrepresentation
of privileges (or their names) and to covert the internal representation back to privilege names.
-
-
Field Summary
-
Fields inherited from interface org.apache.jackrabbit.oak.spi.security.privilege.PrivilegeConstants
AGGREGATE_PRIVILEGES, JCR_ADD_CHILD_NODES, JCR_ALL, JCR_LIFECYCLE_MANAGEMENT, JCR_LOCK_MANAGEMENT, JCR_MODIFY_ACCESS_CONTROL, JCR_MODIFY_PROPERTIES, JCR_NAMESPACE_MANAGEMENT, JCR_NODE_TYPE_DEFINITION_MANAGEMENT, JCR_NODE_TYPE_MANAGEMENT, JCR_READ, JCR_READ_ACCESS_CONTROL, JCR_REMOVE_CHILD_NODES, JCR_REMOVE_NODE, JCR_RETENTION_MANAGEMENT, JCR_VERSION_MANAGEMENT, JCR_WORKSPACE_MANAGEMENT, JCR_WRITE, NON_AGGREGATE_PRIVILEGES, NT_REP_PRIVILEGE, NT_REP_PRIVILEGES, PRIVILEGE_NODETYPE_NAMES, PRIVILEGE_PROPERTY_NAMES, PRIVILEGES_PATH, REP_ADD_PROPERTIES, REP_AGGREGATES, REP_ALTER_PROPERTIES, REP_BITS, REP_INDEX_DEFINITION_MANAGEMENT, REP_IS_ABSTRACT, REP_NEXT, REP_PRIVILEGE_MANAGEMENT, REP_PRIVILEGES, REP_READ_NODES, REP_READ_PROPERTIES, REP_REMOVE_PROPERTIES, REP_USER_MANAGEMENT, REP_WRITE
-
-
Constructor Summary
Constructors Constructor Description PrivilegeBitsProvider(Root root)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description @NotNull java.lang.Iterable<java.lang.String>
getAggregatedPrivilegeNames(@NotNull java.lang.String... privilegeNames)
Return the names of the non-aggregate privilege names corresponding to the specifiedprivilegeNames
.@NotNull PrivilegeBits
getBits(@NotNull java.lang.Iterable<java.lang.String> privilegeNames)
Returns the bits for the given privilege names.@NotNull PrivilegeBits
getBits(@NotNull java.lang.Iterable<java.lang.String> privilegeNames, boolean validateNames)
Returns the bits for the given privilege names with the option to verify that all privilege names point to a valid, registered privilege.@NotNull PrivilegeBits
getBits(@NotNull java.lang.String... privilegeNames)
Returns the bits for the given privilege names.@NotNull PrivilegeBits
getBits(@NotNull Privilege[] privileges, @NotNull NameMapper nameMapper)
Returns the bits for the given array of privileges.@NotNull java.util.Set<java.lang.String>
getPrivilegeNames(@Nullable PrivilegeBits privilegeBits)
Resolve the given privilege bits to the corresponding set of privilege names.@NotNull Tree
getPrivilegesTree()
Returns the root tree for all privilege definitions stored in the content repository.
-
-
-
Constructor Detail
-
PrivilegeBitsProvider
public PrivilegeBitsProvider(Root root)
-
-
Method Detail
-
getPrivilegesTree
@NotNull public @NotNull Tree getPrivilegesTree()
Returns the root tree for all privilege definitions stored in the content repository.- Returns:
- The privileges root.
-
getBits
@NotNull public @NotNull PrivilegeBits getBits(@NotNull @NotNull java.lang.String... privilegeNames)
Returns the bits for the given privilege names.- Parameters:
privilegeNames
- the names- Returns:
- the privilege bits representing the given privilege names.
-
getBits
@NotNull public @NotNull PrivilegeBits getBits(@NotNull @NotNull java.lang.Iterable<java.lang.String> privilegeNames)
Returns the bits for the given privilege names. Note, that any invalid privilege names will be ignored.- Parameters:
privilegeNames
- the names- Returns:
- the privilege bits representing the given privilege names.
-
getBits
@NotNull public @NotNull PrivilegeBits getBits(@NotNull @NotNull java.lang.Iterable<java.lang.String> privilegeNames, boolean validateNames) throws AccessControlException
Returns the bits for the given privilege names with the option to verify that all privilege names point to a valid, registered privilege.- Parameters:
privilegeNames
- An iterable of privilege names.validateNames
- If set totrue
this method will throw an AccessControlException if an invalid privilege name is found (i.e. one that doesn't represent a registered privilege). If set tofalse
invalid privilege names will be ignored i.e. making this method equivalent togetBits(String...)
.- Returns:
- the privilege bits representing the given privilege names.
- Throws:
AccessControlException
- IfvalidateNames
istrue
and the any of the specified privilege names is invalid.
-
getBits
@NotNull public @NotNull PrivilegeBits getBits(@NotNull @NotNull Privilege[] privileges, @NotNull @NotNull NameMapper nameMapper)
Returns the bits for the given array of privileges.- Parameters:
privileges
- An array of privilegesnameMapper
- the name mapper- Returns:
- the privilege bits representing the given array of privileges.
-
getPrivilegeNames
@NotNull public @NotNull java.util.Set<java.lang.String> getPrivilegeNames(@Nullable @Nullable PrivilegeBits privilegeBits)
Resolve the given privilege bits to the corresponding set of privilege names.- Parameters:
privilegeBits
- An instance of privilege bits.- Returns:
- The names of the registered privileges associated with the given bits. Any bits that don't have a corresponding privilege definition will be ignored.
-
getAggregatedPrivilegeNames
@NotNull public @NotNull java.lang.Iterable<java.lang.String> getAggregatedPrivilegeNames(@NotNull @NotNull java.lang.String... privilegeNames)
Return the names of the non-aggregate privilege names corresponding to the specifiedprivilegeNames
.- Parameters:
privilegeNames
- The privilege names to be converted.- Returns:
- The names of the non-aggregate privileges that correspond to the
given
privilegeNames
.
-
-