Overview

Namespaces

  • PHP
  • ProgrammingAreHard
    • Arbiter
      • Domain
      • Model
  • Symfony
    • Component
      • Security
        • Acl
          • Exception
          • Model
          • Permission
        • Core
          • User

Interfaces

  • AclCacheInterface
  • AclInterface
  • AclProviderInterface
  • AuditableAclInterface
  • AuditableEntryInterface
  • AuditLoggerInterface
  • DomainObjectInterface
  • EntryInterface
  • FieldEntryInterface
  • MutableAclInterface
  • MutableAclProviderInterface
  • ObjectIdentityInterface
  • ObjectIdentityRetrievalStrategyInterface
  • PermissionGrantingStrategyInterface
  • SecurityIdentityInterface
  • SecurityIdentityRetrievalStrategyInterface
  • Overview
  • Namespace
  • Class
  • Tree
 1: <?php
 2: 
 3: /*
 4:  * This file is part of the Symfony package.
 5:  *
 6:  * (c) Fabien Potencier <fabien@symfony.com>
 7:  *
 8:  * For the full copyright and license information, please view the LICENSE
 9:  * file that was distributed with this source code.
10:  */
11: 
12: namespace Symfony\Component\Security\Acl\Model;
13: 
14: /**
15:  * Provides support for creating and storing ACL instances.
16:  *
17:  * @author Johannes M. Schmitt <schmittjoh@gmail.com>
18:  */
19: interface MutableAclProviderInterface extends AclProviderInterface
20: {
21:     /**
22:      * Creates a new ACL for the given object identity.
23:      *
24:      * @throws AclAlreadyExistsException when there already is an ACL for the given
25:      *                                   object identity
26:      * @param ObjectIdentityInterface $oid
27:      * @return MutableAclInterface
28:      */
29:     public function createAcl(ObjectIdentityInterface $oid);
30: 
31:     /**
32:      * Deletes the ACL for a given object identity.
33:      *
34:      * This will automatically trigger a delete for any child ACLs. If you don't
35:      * want child ACLs to be deleted, you will have to set their parent ACL to null.
36:      *
37:      * @param ObjectIdentityInterface $oid
38:      */
39:     public function deleteAcl(ObjectIdentityInterface $oid);
40: 
41:     /**
42:      * Persists any changes which were made to the ACL, or any associated
43:      * access control entries.
44:      *
45:      * Changes to parent ACLs are not persisted.
46:      *
47:      * @param MutableAclInterface $acl
48:      */
49:     public function updateAcl(MutableAclInterface $acl);
50: }
51: 
Arbiter API documentation generated by ApiGen 2.8.0