AuthUnit

flitter-auth/AuthUnit~ AuthUnit

Registers functionality provided by flitter-auth.


Constructor

new AuthUnit()

Instantiate the unit.

Extends

Members

(static) name

Get the name of the service this unit represents - 'auth'

(static) services

Defines the services required by this unit.

(private) _di_allow_defer :boolean

If true, the injector will defer the class if the class requests any services that the container is missing. These services are filled in later and added to the prototype and any instances. True by default.

Type:
  • boolean

(private) _di_deferred_instances :Array.<module:flitter-di/src/Injectable~Injectable>

Collection of instances of this class that need to have the deferred service instances injected into them when the deferred services are finally provided.

(private) _di_deferred_services :Array.<string>

List of services that were deferred and not provided at the time of injection.

Type:
  • Array.<string>

provider_classes :object

Mapping of provider class names to static provider classes.

Type:
  • object

providers :object

Mapping of provider names to instances of the {module:flitter-auth/Provider~Provider} classes.

Type:
  • object

Methods

(async) cleanup(app) → {Promise.<void>}

Clean up the resources managed by this unit. Calls the 'cleanup' method on all registered providers in this service.

Parameters:
Name Type Description
app module:libflitter/app/FlitterApp~FlitterApp

the Flitter app

Returns:
Type
Promise.<void>

(async) deploy() → {Promise.<void>}

Deploy the resources provided by flitter-auth. That is, the controllers/views/routes/models/middleware/etc.

Returns:
Type
Promise.<void>

directories() → {Object}

Get the directories provided by the unit. Should be an object such that key => value is the name of the directory => fully qualified path to the directory.

Returns:
Type
Object

get_provider(nameopt) → {module:flitter-auth/Provider~Provider}

Get the provider configured with the specified name. If no name is provided, the default provider will be returned.

Parameters:
Name Type Attributes Description
name string <optional>

get_provider_instance(name) → {module:flitter-auth/Provider~Provider}

Get the auth source instance with the specified name.

Parameters:
Name Type Description
name string

(async) go(app) → {Promise.<void>}

Initialize the unit:

  • Registers the auth and authProvider canonical resources
  • For all configured auth sources, create a new instance of the applicable provider and register it with this service.
Parameters:
Name Type Description
app module:libflitter/app/FlitterApp~FlitterApp

the Flitter app

Returns:
Type
Promise.<void>

(async) init_oauth() → {Promise.<void>}

Initializes the OAuth2 server's resources.

Returns:
Type
Promise.<void>

migrations() → {string}

Get the fully-qualified path to the migrations provided by this unit.

Returns:
Type
string

name() → {String}

Get the name of the unit. Should be a lowercase, alphanum/dash/underscore string.

Returns:
Type
String

resolve_provider(name) → {module:flitter-auth/Provider~Provider}

Get the auth provider class definition with the specified name.

Parameters:
Name Type Description
name string
Returns:
  • the static CLASS reference
Type
module:flitter-auth/Provider~Provider

status(setopt) → {string}

Get or set the unit's current status.

Parameters:
Name Type Attributes Description
set string <optional>

if provided, set the status of the unit

Returns:
  • current status of the unit
Type
string