Class DynamicAccessControlListImpl
java.lang.Object
org.apache.fulcrum.security.model.dynamic.DynamicAccessControlListImpl
- All Implemented Interfaces:
Serializable
,AccessControlList
,DynamicAccessControlList
This is a control class that makes it easy to find out if a particular User
has a given Permission. It also determines if a User has a a particular Role.
- Version:
- $Id$
- Author:
- Eric Pugh
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionDynamicAccessControlListImpl
(Map<? extends Group, ? extends RoleSet> roleSets, Map<? extends Role, ? extends PermissionSet> permissionSets) Constructs a new AccessControlList. -
Method Summary
Modifier and TypeMethodDescriptionRetrieves a set of Permissions an user is assigned in the global Group.getPermissions
(Group group) Retrieves a set of Permissions an user is assigned in a Group.getRoles()
Retrieves a set of Roles an user is assigned in the global Group.Retrieves a set of Roles an user is assigned in a Group.boolean
hasPermission
(String permission) Checks if the user is assigned a specific Permission in the global Group.boolean
hasPermission
(String permission, String group) Checks if the user is assigned a specific Permission in the Group.boolean
hasPermission
(String permission, Group group) Checks if the user is assigned a specific Permission in the Group.boolean
hasPermission
(String permissionName, GroupSet groupset) Checks if the user is assigned a specific Permission in any of the given Groupsboolean
hasPermission
(Permission permission) Checks if the user is assigned a specific Permission.boolean
hasPermission
(Permission permission, Group group) Checks if the user is assigned a specific Permission in the Group.boolean
hasPermission
(Permission permission, GroupSet groupset) Checks if the user is assigned a specific Permission in any of the given Groupsboolean
Checks if the user is assigned a specific Role .boolean
Checks if the user is assigned a specific Role in the Group.boolean
Checks if the user is assigned a specific Role in any of the given Groupsboolean
Checks if the user is assigned a specific Roleboolean
Checks if the user is assigned a specific Role in the Group.boolean
Checks if the user is assigned a specific Role in any of the given Groups
-
Constructor Details
-
DynamicAccessControlListImpl
public DynamicAccessControlListImpl(Map<? extends Group, ? extends RoleSet> roleSets, Map<? extends Role, ? extends PermissionSet> permissionSets) Constructs a new AccessControlList. This class follows 'immutable' pattern - it's objects can't be modified once they are created. This means that the permissions the users have are in effect form the moment they log in to the moment they log out, and changes made to the security settings in that time are not reflected in the state of this object. If you need to reset an user's permissions you need to invalidate his session.
The objects that constructs an AccessControlList must supply hashtables of role/permission sets keyed with group objects.- Parameters:
roleSets
- a hashtable containing RoleSet objects keyed with Group objectspermissionSets
- a hashtable containing PermissionSet objects keyed with Roles objects
-
-
Method Details
-
getRoles
Retrieves a set of Roles an user is assigned in a Group.- Specified by:
getRoles
in interfaceDynamicAccessControlList
- Parameters:
group
- the Group- Returns:
- the set of Roles this user has within the Group.
-
getRoles
Retrieves a set of Roles an user is assigned in the global Group.- Specified by:
getRoles
in interfaceDynamicAccessControlList
- Returns:
- the set of Roles this user has within the global Group.
-
getPermissions
Retrieves a set of Permissions an user is assigned in a Group.- Specified by:
getPermissions
in interfaceDynamicAccessControlList
- Parameters:
group
- the Group- Returns:
- the set of Permissions this user has within the Group.
-
getPermissions
Retrieves a set of Permissions an user is assigned in the global Group.- Specified by:
getPermissions
in interfaceDynamicAccessControlList
- Returns:
- the set of Permissions this user has within the global Group.
-
hasRole
Checks if the user is assigned a specific Role in the Group.- Specified by:
hasRole
in interfaceDynamicAccessControlList
- Parameters:
role
- the Rolegroup
- the Group- Returns:
true
if the user is assigned the Role in the Group.
-
hasRole
Checks if the user is assigned a specific Role in any of the given Groups- Specified by:
hasRole
in interfaceDynamicAccessControlList
- Parameters:
role
- the Rolegroupset
- a Groupset- Returns:
true
if the user is assigned the Role in any of the given Groups.
-
hasRole
Checks if the user is assigned a specific Role in the Group.- Specified by:
hasRole
in interfaceDynamicAccessControlList
- Parameters:
role
- the Rolegroup
- the Group- Returns:
true
if the user is assigned the Role in the Group.
-
hasRole
Checks if the user is assigned a specific Role in any of the given Groups- Specified by:
hasRole
in interfaceDynamicAccessControlList
- Parameters:
rolename
- the name of the Rolegroupset
- a Groupset- Returns:
true
if the user is assigned the Role in any of the given Groups.
-
hasRole
Checks if the user is assigned a specific Role- Specified by:
hasRole
in interfaceDynamicAccessControlList
- Parameters:
role
- the Role- Returns:
true
if the user is assigned the Role in the global Group.
-
hasRole
Checks if the user is assigned a specific Role .- Specified by:
hasRole
in interfaceDynamicAccessControlList
- Parameters:
role
- the Role- Returns:
true
if the user is assigned the Role .
-
hasPermission
Checks if the user is assigned a specific Permission in the Group.- Specified by:
hasPermission
in interfaceDynamicAccessControlList
- Parameters:
permission
- the Permissiongroup
- the Group- Returns:
true
if the user is assigned the Permission in the Group.
-
hasPermission
Checks if the user is assigned a specific Permission in any of the given Groups- Specified by:
hasPermission
in interfaceDynamicAccessControlList
- Parameters:
permission
- the Permissiongroupset
- a Groupset- Returns:
true
if the user is assigned the Permission in any of the given Groups.
-
hasPermission
Checks if the user is assigned a specific Permission in the Group.- Specified by:
hasPermission
in interfaceDynamicAccessControlList
- Parameters:
permission
- the Permissiongroup
- the Group- Returns:
true
if the user is assigned the Permission in the Group.
-
hasPermission
Checks if the user is assigned a specific Permission in the Group.- Specified by:
hasPermission
in interfaceDynamicAccessControlList
- Parameters:
permission
- the Permissiongroup
- the Group- Returns:
true
if the user is assigned the Permission in the Group.
-
hasPermission
Checks if the user is assigned a specific Permission in any of the given Groups- Specified by:
hasPermission
in interfaceDynamicAccessControlList
- Parameters:
permissionName
- the name of the Permissiongroupset
- a Groupset- Returns:
true
if the user is assigned the Permission in any of the given Groups.
-
hasPermission
Checks if the user is assigned a specific Permission.- Specified by:
hasPermission
in interfaceDynamicAccessControlList
- Parameters:
permission
- the Permission- Returns:
true
if the user is assigned the Permission .
-
hasPermission
Checks if the user is assigned a specific Permission in the global Group.- Specified by:
hasPermission
in interfaceDynamicAccessControlList
- Parameters:
permission
- the Permission- Returns:
true
if the user is assigned the Permission in the global Group.
-