MutableAclProvider
class MutableAclProvider extends AclProvider implements MutableAclProviderInterface, PropertyChangedListener
An implementation of the MutableAclProviderInterface using Doctrine DBAL.
Constants
MAX_BATCH_SIZE |
|
Methods
Constructor.
Retrieves all child object identities from the database
Returns the ACL that belongs to the given object identity
Returns the ACLs that belong to the given object identities
Deletes the security identity from the database.
Implementation of PropertyChangedListener
Persists any changes which were made to the ACL, or any associated access control entries.
Updates a user security identity when the user's username changes
Details
at line line 41
__construct(Connection $connection, PermissionGrantingStrategyInterface $permissionGrantingStrategy, array $options, AclCacheInterface $cache = null)
Constructor.
in AclProvider at line line 78
array
findChildren(ObjectIdentityInterface $parentOid, bool $directChildrenOnly = false)
Retrieves all child object identities from the database
in AclProvider at line line 93
AclInterface
findAcl(ObjectIdentityInterface $oid, array $sids = array())
Returns the ACL that belongs to the given object identity
at line line 127
SplObjectStorage
findAcls(array $oids, array $sids = array())
Returns the ACLs that belong to the given object identities
at line line 51
MutableAclInterface
createAcl(ObjectIdentityInterface $oid)
Creates a new ACL for the given object identity.
at line line 79
deleteAcl(ObjectIdentityInterface $oid)
Deletes the ACL for a given object identity.
This will automatically trigger a delete for any child ACLs. If you don't want child ACLs to be deleted, you will have to set their parent ACL to null.
at line line 119
deleteSecurityIdentity(SecurityIdentityInterface $sid)
Deletes the security identity from the database.
ACL entries have the CASCADE option on their foreign key so they will also get deleted
at line line 166
propertyChanged(mixed $sender, string $propertyName, mixed $oldValue, mixed $newValue)
Implementation of PropertyChangedListener
This allows us to keep track of which values have been changed, so we don't have to do a full introspection when ->updateAcl() is called.
at line line 234
updateAcl(MutableAclInterface $acl)
Persists any changes which were made to the ACL, or any associated access control entries.
Changes to parent ACLs are not persisted.
at line line 373
updateUserSecurityIdentity(UserSecurityIdentity $usid, string $oldUsername)
Updates a user security identity when the user's username changes