com.holonplatform.auth

## Interface Authentication.Builder

- Enclosing interface:
    Authentication

      public static interface Authentication.Builder

  Builder to create `Authentication` instances.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `Authentication` | `build()` Create Authentication instance
    `<T> Authentication.Builder` | `parameter(ConfigProperty<T> property, T value)` Add an authentication parameter using a `ConfigProperty` an `ConfigProperty.getKey()` as parameter name
    `Authentication.Builder` | `parameter(String name, Object value)` Add an authentication parameter
    `Authentication.Builder` | `permission(Permission permission)` Add a permission granted to Authentication
    `Authentication.Builder` | `permission(String permission)` Add a permission granted to Authentication using String representation.
    `Authentication.Builder` | `root(boolean root)` Set whether authentication is considered a `root` principal, for which permission checking is always skipped, assuming that any permission is granted.
    `Authentication.Builder` | `scheme(String scheme)` Set the authentication scheme with which this authentication was produced.

- - ### Method Detail

    - #### scheme

          Authentication.Builder scheme(String scheme)

      Set the authentication scheme with which this authentication was produced.
      Parameters:
        `scheme` - Authentication scheme name
      Returns:
        this

    - #### root

          Authentication.Builder root(boolean root)

      Set whether authentication is considered a `root` principal, for which permission checking is always skipped, assuming that any permission is granted.
      Parameters:
        `root` - `true` to set authentication as `root` principal
      Returns:
        this

    - #### parameter

          Authentication.Builder parameter(String name,
                                           Object value)

      Add an authentication parameter
      Parameters:
        `name` - Parameter name (not null)
        `value` - Parameter value
      Returns:
        this

    - #### parameter

          <T> Authentication.Builder parameter(ConfigProperty<T> property,
                                               T value)

      Add an authentication parameter using a `ConfigProperty` an `ConfigProperty.getKey()` as parameter name
      Type Parameters:
        `T` - Property type
      Parameters:
        `property` - ConfigProperty to obtain parameter name (not null)
        `value` - Parameter value
      Returns:
        this

    - #### permission

          Authentication.Builder permission(Permission permission)

      Add a permission granted to Authentication
      Parameters:
        `permission` - Permission to add (not null)
      Returns:
        this

    - #### permission

          Authentication.Builder permission(String permission)

      Add a permission granted to Authentication using String representation.
      Parameters:
        `permission` - Permission string to add (not null)
      Returns:
        this

    - #### build

          Authentication build()

      Create Authentication instance
      Returns:
        Authentication

Copyright © 2017 The Holon Platform. All rights reserved.