MutableAclProviderInterface

interface MutableAclProviderInterface implements AclProviderInterface Provides support for creating and storing ACL instances. Methods array findChildren(ObjectIdentityInterface $parentOid, Boolean $directChildrenOnly = false) Retrieves all child object identities from the database from AclProviderInterface AclInterface findAcl(ObjectIdentityInterface $oid, array $sids = array()) Returns the ACL that belongs to the given object identity from AclProviderInterface SplObjectStorage

MutableAclProvider::updateUserSecurityIdentity()

updateUserSecurityIdentity(UserSecurityIdentity $usid, string $oldUsername) Updates a user security identity when the user's username changes Parameters UserSecurityIdentity $usid string $oldUsername

MutableAclProvider::updateAcl()

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. Parameters MutableAclInterface $acl

MutableAclProvider::propertyChanged()

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. Parameters mixed $sender string $propertyName mixed $oldValue mixed $newValue Exceptions InvalidArgumentException

MutableAclProvider::findAcls()

SplObjectStorage findAcls(array $oids, array $sids = array()) Returns the ACLs that belong to the given object identities Parameters array $oids an array of ObjectIdentityInterface implementations array $sids an array of SecurityIdentityInterface implementations Return Value SplObjectStorage mapping the passed object identities to ACLs Exceptions AclNotFoundException when we cannot find an ACL for all identities

MutableAclProvider::deleteSecurityIdentity()

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 Parameters SecurityIdentityInterface $sid Exceptions InvalidArgumentException

MutableAclProvider::deleteAcl()

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. Parameters ObjectIdentityInterface $oid

MutableAclProvider::createAcl()

MutableAclInterface createAcl(ObjectIdentityInterface $oid) Creates a new ACL for the given object identity. Parameters ObjectIdentityInterface $oid Return Value MutableAclInterface Exceptions AclAlreadyExistsException when there already is an ACL for the given object identity

MutableAclProvider

class MutableAclProvider extends AclProvider implements MutableAclProviderInterface, PropertyChangedListener An implementation of the MutableAclProviderInterface using Doctrine DBAL. Constants MAX_BATCH_SIZE Methods __construct(Connection $connection, PermissionGrantingStrategyInterface $permissionGrantingStrategy, array $options, AclCacheInterface $cache = null) Constructor. array findChildren(ObjectIdentityInterface $parentOid, bool $directChildrenOnly = false) Retrieves all

MutableAclInterface::updateObjectFieldAce()

updateObjectFieldAce(int $index, string $field, int $mask, string $strategy = null) Updates an object-field-based ACE Parameters int $index string $field int $mask string $strategy if null the strategy should not be changed