Interface ACLPersistenceStrategy
-
- All Known Implementing Classes:
JPAPersistenceStrategy
public interface ACLPersistenceStrategy
This interface defines the methods that must be implemented by classes that manage the persistence of
ACL
s. It is used by theACLProvider
to obtain theACL
s that are used in the instance-based authorization checks.- Author:
- Stefan Guilhen
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description ACL
createACL(Resource resource)
Creates a newACL
and associates it to the given resource.ACL
createACL(Resource resource, Collection<ACLEntry> entries)
Creates a newACL
with the specified entries and associates it to the given resource.ACL
getACL(Resource resource)
Obtains a reference to theACL
associated to the given resource.Collection<ACL>
getACLs()
Obtains allACL
s that are managed by thisACLPersistenceStrategy
.boolean
removeACL(ACL acl)
Removes the givenACL
, breaking the existing association with the resource it relates to.boolean
removeACL(Resource resource)
Removes theACL
associated with the specified resource.boolean
updateACL(ACL acl)
Updates the givenACL
.
-
-
-
Method Detail
-
getACL
ACL getACL(Resource resource)
Obtains a reference to the
ACL
associated to the given resource.- Parameters:
resource
- theResource
for which the associated ACL is wanted.- Returns:
- a reference to the
ACL
associated with the resource, or null if no ACL could be found.
-
getACLs
Collection<ACL> getACLs()
Obtains all
ACL
s that are managed by thisACLPersistenceStrategy
.- Returns:
- a
Collection
containing allACL
s retrieved by this strategy.
-
createACL
ACL createACL(Resource resource)
Creates a new
ACL
and associates it to the given resource.- Parameters:
resource
- theResource
for which an ACL is to be created.- Returns:
- a reference to the created
ACL
.
-
createACL
ACL createACL(Resource resource, Collection<ACLEntry> entries)
Creates a new
ACL
with the specified entries and associates it to the given resource.- Parameters:
resource
- theResource
for which an ACL is to be created.entries
- aCollection
containing the entries that must be added to theACL
.- Returns:
- a reference to the created
ACL
.
-
updateACL
boolean updateACL(ACL acl)
Updates the given
ACL
. This usually means updating the repository where the ACLs are stored.- Parameters:
acl
- theACL
that needs to be updated.- Returns:
true
if the ACL was updated;false
otherwise.
-
removeACL
boolean removeACL(ACL acl)
Removes the given
ACL
, breaking the existing association with the resource it relates to.- Parameters:
acl
- a reference to theACL
that is to be removed.- Returns:
true
if the ACL was removed;false
otherwise.
-
removeACL
boolean removeACL(Resource resource)
Removes the
ACL
associated with the specified resource.- Parameters:
resource
- theResource
whose associated ACL is to be removed.- Returns:
true
if the ACL was removed;false
otherwise.
-
-