Constructor
new RoutingUnit(base_directoryopt)
Instantiate the unit.
Name | Type | Attributes | Default | Description |
---|---|---|---|---|
base_directory |
string |
<optional> |
'./app/routing/routers' |
- Source:
Extends
Members
(static) name
Gets the name of the service provided by this unit: 'routers'
- Source:
(static) services
Defines the services required by this unit.
- Source:
(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.
- boolean
- Source:
(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.
- Source:
(private) _di_deferred_services :Array.<string>
List of services that were deferred and not provided at the time of injection.
- Array.<string>
- Source:
canonical_item :string
The canonical name of the item.
- string
- Source:
canonical_items :object
Mapping of canonical names to instances for this item.
- object
- Source:
directory :Promise.<void>|Promise.<string>
The root directory for this canonical resource's files.
- Promise.<void> | Promise.<string>
- Source:
suffix :string
The file extension of the canonical item files.
- string
- Source:
Methods
(async) cleanup(app) → {Promise.<void>}
Cleans up the unit's resources before Flitter closes.
Name | Type | Description |
---|---|---|
app |
module:libflitter/app/FlitterApp~FlitterApp | the Flitter app |
- Source:
- Type
- Promise.<void>
directories() → {object}
Get the directories provided by this unit.
- Type
- object
get(name) → {object}
Resolve an unqualified canonical name to a registered canonical item.
Name | Type | Description |
---|---|---|
name |
string |
- Type
- object
(async) go(app) → {Promise.<void>}
Initializes the unit. Recursively iterates over the base directory and finds all valid files. Loads the instances from those files and initializes them.
Name | Type | Description |
---|---|---|
app |
module:libflitter/app/FlitterApp~FlitterApp | the Flitter app |
- Source:
- Type
- Promise.<void>
(async) init_canonical_file(info) → {Promise.<*>}
Prepare a single canonical router and return the value that should be given by the resolver. This creates a new Express.js router and applies the appropriate middlewares.
Name | Type | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
info |
object |
Properties
|
- Source:
- Type
- Promise.<*>
name() → {String}
Get the name of the unit. Should be a lowercase, alphanum/dash/underscore string.
- Source:
- Type
- String
redirect(to) → {function}
A helper function that returns Express middleware to redirect the request to the specified destination.
Name | Type | Description |
---|---|---|
to |
string | destination route to which the request should be redirected |
- Express middleware
- Type
- function
status(setopt) → {string}
Get or set the unit's current status.
Name | Type | Attributes | Description |
---|---|---|---|
set |
string |
<optional> |
if provided, set the status of the unit |
- Source:
- current status of the unit
- Type
- string
system_middleware(handler) → {function}
Helper function that wraps all request handlers with Flitter system middleware. Allows for things like adding custom methods to the Express request/response objects.
Name | Type | Description |
---|---|---|
handler |
function | the handler to call with the modified request |
- an Express-compatible handler
- Type
- function