Package com.enonic.xp.security.acl

## Class AccessControlList

- java.lang.Object
- - com.enonic.xp.security.acl.AccessControlList

- All Implemented Interfaces:
    `Iterable<AccessControlEntry>`

      @PublicApi
      public final class AccessControlList
      extends Object
      implements Iterable<AccessControlEntry>

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `AccessControlList.Builder` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `contains​(PrincipalKey principalKey)` |
    `static AccessControlList.Builder` | `create()` |
    `static AccessControlList.Builder` | `create​(AccessControlList acl)` |
    `static AccessControlList` | `empty()` |
    `boolean` | `equals​(Object o)` |
    `PrincipalKeys` | `getAllPrincipals()` |
    `Collection<AccessControlEntry>` | `getEntries()` |
    `AccessControlEntry` | `getEntry​(PrincipalKey principalKey)` |
    `PrincipalKeys` | `getPrincipalsWithPermission​(Permission permission)` |
    `int` | `hashCode()` |
    `boolean` | `isAllowedFor​(PrincipalKey principal, Permission permission)` |
    `boolean` | `isAllowedFor​(PrincipalKey principal, Permission... permissions)` |
    `boolean` | `isAllowedFor​(PrincipalKeys principals, Permission permission)` |
    `boolean` | `isAllowedFor​(PrincipalKeys principals, Permission... permissions)` |
    `boolean` | `isEmpty()` |
    `Iterator<AccessControlEntry>` | `iterator()` |
    `static AccessControlList` | `of​(AccessControlEntry... entries)` |
    `String` | `toString()` |

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface java.lang.Iterable

      `forEach, spliterator`

- - ### Method Detail

    - #### empty

          public static AccessControlList empty()

    - #### of

          public static AccessControlList of​(AccessControlEntry... entries)

    - #### create

          public static AccessControlList.Builder create()

    - #### create

          public static AccessControlList.Builder create​(AccessControlList acl)

    - #### isAllowedFor

          public boolean isAllowedFor​(PrincipalKey principal,
                                      Permission... permissions)

    - #### isAllowedFor

          public boolean isAllowedFor​(PrincipalKey principal,
                                      Permission permission)

    - #### isAllowedFor

          public boolean isAllowedFor​(PrincipalKeys principals,
                                      Permission... permissions)

    - #### isAllowedFor

          public boolean isAllowedFor​(PrincipalKeys principals,
                                      Permission permission)

    - #### getAllPrincipals

          public PrincipalKeys getAllPrincipals()

    - #### getPrincipalsWithPermission

          public PrincipalKeys getPrincipalsWithPermission​(Permission permission)

    - #### getEntry

          public AccessControlEntry getEntry​(PrincipalKey principalKey)

    - #### getEntries

          public Collection<AccessControlEntry> getEntries()

    - #### contains

          public boolean contains​(PrincipalKey principalKey)

    - #### isEmpty

          public boolean isEmpty()

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

    - #### iterator

          public Iterator<AccessControlEntry> iterator()

      Specified by:
        `iterator` in interface `Iterable<AccessControlEntry>`

    - #### equals

          public boolean equals​(Object o)

      Overrides:
        `equals` in class `Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`