Package com.io7m.idstore.model

# Enum Class IdAdminPermission

java.lang.Object
java.lang.Enum<IdAdminPermission>
com.io7m.idstore.model.IdAdminPermission

All Implemented Interfaces:
  `Serializable`, `Comparable<IdAdminPermission>`, `Constable`

public enum IdAdminPermission extends Enum<IdAdminPermission>
The type of admin permissions.

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class java.lang.Enum

  `Enum.EnumDesc<E extends Enum<E>>`

- ## Enum Constant Summary

  Enum Constants
  Enum Constant
  Description
  `ADMIN_BAN`
  A permission that allows for banning admins.
  `ADMIN_CREATE`
  A permission that allows for creating admins.
  `ADMIN_DELETE`
  A permission that allows for deleting admins.
  `ADMIN_READ`
  A permission that allows reading admins.
  `ADMIN_WRITE_CREDENTIALS`
  A permission that allows for modifying the credentials (names, passwords) of admins.
  `ADMIN_WRITE_CREDENTIALS_SELF`
  A permission that allows for modifying the credentials (names, passwords) of the calling admin.
  `ADMIN_WRITE_EMAIL`
  A permission that allows for modifying the email addresses of admins.
  `ADMIN_WRITE_EMAIL_SELF`
  A permission that allows for modifying the email addresses of the calling admin.
  `ADMIN_WRITE_PERMISSIONS`
  A permission that allows for modifying the permissions of admins.
  `ADMIN_WRITE_PERMISSIONS_SELF`
  A permission that allows for modifying the permissions of the calling admin.
  `AUDIT_READ`
  A permission that allows reading the audit log.
  `USER_BAN`
  A permission that allows for banning users.
  `USER_CREATE`
  A permission that allows creating users.
  `USER_DELETE`
  A permission that allows deleting users.
  `USER_READ`
  A permission that allows reading users.
  `USER_WRITE_CREDENTIALS`
  A permission that allows for modifying the credentials (names, passwords) of users.
  `USER_WRITE_EMAIL`
  A permission that allows for modifying the email addresses of users.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `abstract Set<IdAdminPermission>`
  `implies()`
  `static IdAdminPermission`
  `valueOf(String name)`
  Returns the enum constant of this class with the specified name.
  `static IdAdminPermission[]`
  `values()`
  Returns an array containing the constants of this enum class, in the order they are declared.

  ### Methods inherited from class java.lang.Enum

  `clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

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

  `getClass, notify, notifyAll, wait, wait, wait`

- ## Enum Constant Details

  - ### ADMIN_DELETE

    public static final IdAdminPermission ADMIN_DELETE
    A permission that allows for deleting admins.

  - ### ADMIN_CREATE

    public static final IdAdminPermission ADMIN_CREATE
    A permission that allows for creating admins.

  - ### USER_BAN

    public static final IdAdminPermission USER_BAN
    A permission that allows for banning users.

  - ### ADMIN_BAN

    public static final IdAdminPermission ADMIN_BAN
    A permission that allows for banning admins.

  - ### ADMIN_WRITE_EMAIL

    public static final IdAdminPermission ADMIN_WRITE_EMAIL
    A permission that allows for modifying the email addresses of admins.

  - ### ADMIN_WRITE_EMAIL_SELF

    public static final IdAdminPermission ADMIN_WRITE_EMAIL_SELF
    A permission that allows for modifying the email addresses of the calling admin.

  - ### ADMIN_WRITE_PERMISSIONS

    public static final IdAdminPermission ADMIN_WRITE_PERMISSIONS
    A permission that allows for modifying the permissions of admins.

  - ### ADMIN_WRITE_PERMISSIONS_SELF

    public static final IdAdminPermission ADMIN_WRITE_PERMISSIONS_SELF
    A permission that allows for modifying the permissions of the calling admin.

  - ### ADMIN_WRITE_CREDENTIALS

    public static final IdAdminPermission ADMIN_WRITE_CREDENTIALS
    A permission that allows for modifying the credentials (names, passwords) of admins.

  - ### ADMIN_WRITE_CREDENTIALS_SELF

    public static final IdAdminPermission ADMIN_WRITE_CREDENTIALS_SELF
    A permission that allows for modifying the credentials (names, passwords) of the calling admin.

  - ### ADMIN_READ

    public static final IdAdminPermission ADMIN_READ
    A permission that allows reading admins.

  - ### AUDIT_READ

    public static final IdAdminPermission AUDIT_READ
    A permission that allows reading the audit log.

  - ### USER_DELETE

    public static final IdAdminPermission USER_DELETE
    A permission that allows deleting users.

  - ### USER_CREATE

    public static final IdAdminPermission USER_CREATE
    A permission that allows creating users.

  - ### USER_WRITE_EMAIL

    public static final IdAdminPermission USER_WRITE_EMAIL
    A permission that allows for modifying the email addresses of users.

  - ### USER_WRITE_CREDENTIALS

    public static final IdAdminPermission USER_WRITE_CREDENTIALS
    A permission that allows for modifying the credentials (names, passwords) of users.

  - ### USER_READ

    public static final IdAdminPermission USER_READ
    A permission that allows reading users.

- ## Method Details

  - ### values

    public static IdAdminPermission[] values()
    Returns an array containing the constants of this enum class, in the order they are declared.
    Returns:
      an array containing the constants of this enum class, in the order they are declared

  - ### valueOf

    public static IdAdminPermission valueOf(String name)
    Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
    Parameters:
      `name` - the name of the enum constant to be returned.
    Returns:
      the enum constant with the specified name
    Throws:
      `IllegalArgumentException` - if this enum class has no constant with the specified name
      `NullPointerException` - if the argument is null

  - ### implies

    public abstract Set<IdAdminPermission> implies()
    Returns:
      The set of permissions implied by this permission