vendor/symfony/src/Symfony/Component/Security/Acl/Model/MutableAclProviderInterface.php
equal
deleted
inserted
replaced
|
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 AclInterface |
|
28 */ |
|
29 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 * @return void |
|
39 */ |
|
40 function deleteAcl(ObjectIdentityInterface $oid); |
|
41 |
|
42 /** |
|
43 * Persists any changes which were made to the ACL, or any associated |
|
44 * access control entries. |
|
45 * |
|
46 * Changes to parent ACLs are not persisted. |
|
47 * |
|
48 * @param MutableAclInterface $acl |
|
49 * @return void |
|
50 */ |
|
51 function updateAcl(MutableAclInterface $acl); |
|
52 } |