FeatureApiService

FeatureApiService

The Twyr Web Application Server API Service.

Constructor

new FeatureApiService()

Allows the modules in a single feature to communicate with each other by allowing registration / invocation of API.

Source:

Allows the modules in a single feature to communicate with each other by allowing registration / invocation of API. If the requested for API cannot be found, it bubbles up to the next level, till it gets to the server

Extends

Members

(readonly) basePath :string

Source:
Overrides:
Type:
  • string

(readonly) dependencies :Object

Source:
Overrides:
Type:
  • Object

(readonly) Interface :Object

Source:
Overrides:
Type:
  • Object

(readonly) name :string

Source:
Inherited From:
Type:
  • string

Methods

(async) _changeState(newState) → {undefined}

Enables / disables this module, and all its sub-modules (if any).

Source:
Inherited From:
Parameters:
Name Type Description
newState Object

The next state of this module.

Returns:

Nothing.

Type
undefined

(async) _dependencyReconfigure(dependency) → {undefined}

Lets the module know that one of its dependencies changed configuration.

Source:
Inherited From:
Parameters:
Name Type Description
dependency TwyrBaseModule

The dependency that changed configuration.

Returns:

Nothing.

Type
undefined

(async) _dependencyStateChange(dependency, newState) → {undefined}

Lets the module know that one of its dependencies changed state.

Source:
Inherited From:
Parameters:
Name Type Description
dependency TwyrBaseModule

The dependency that changed state.

newState Object

The next state of the dependency.

Returns:

Nothing.

Type
undefined

(async) _exists(filepath, mode) → {boolean}

Checks to see if the path can be accessed by this process using the mode specified.

Source:
Inherited From:
Parameters:
Name Type Description
filepath string

Path of the filesystem entity.

mode number

Permission to be checked for.

Returns:

True / False.

Type
boolean

_handleUncaughtException(err) → {undefined}

Logs Unhandled Exceptions to prevent the process from crashing.

Source:
Inherited From:
Parameters:
Name Type Description
err Error

The unhandled exception.

Returns:

Nothing.

Type
undefined

(async) _parentReconfigure() → {undefined}

Lets the module know that its parent changed configuration.

Source:
Inherited From:
Returns:

Nothing.

Type
undefined

(async) _parentStateChange(newState) → {undefined}

Lets the module know that its parent changed state.

Source:
Inherited From:
Parameters:
Name Type Description
newState Object

The next state of the parent module.

Returns:

Nothing.

Type
undefined

(async) _reconfigure(newConfig) → {undefined}

Changes the configuration of this module, and informs everyone interested.

Source:
Inherited From:
Parameters:
Name Type Description
newConfig Object

The changed confoguration.

Returns:

Nothing.

Type
undefined

(async) _setup() → {undefined}

To be implemented by derived classes for setting themselves up.

Source:
Overrides:
Returns:

Nothing.

Type
undefined

(async) _subModuleReconfigure(subModule) → {undefined}

Lets the module know that one of its subModules changed configuration.

Source:
Inherited From:
Parameters:
Name Type Description
subModule TwyrBaseModule

The sub-module that changed configuration.

Returns:

Nothing.

Type
undefined

(async) _subModuleStateChange(subModule, newState) → {undefined}

Lets the module know that one of its subModules changed state.

Source:
Inherited From:
Parameters:
Name Type Description
subModule TwyrBaseModule

The sub-module that changed state.

newState Object

The next state of the sub-module.

Returns:

Nothing.

Type
undefined

(async) _teardown() → {undefined}

To be implemented by derived classes for un-setting themselves down.

Source:
Overrides:
Returns:

Nothing.

Type
undefined

(async) add(pattern, api) → {boolean}

Registers the api function as a handler for the pattern.

Source:
Parameters:
Name Type Description
pattern string

The pattern to which this api will respond.

api function

The api to be invoked against the pattern.

Returns:

Boolean true/false - depending on whether the registration succeeded.

Type
boolean

(async) execute(pattern, data) → {Array}

Executes all the apis registered as handlers for the pattern.

Source:
Parameters:
Name Type Description
pattern string

The pattern to be executed.

data Object

The data to be passed in as arguments to each of the api registered against the pattern.

Returns:

The results of the execution.

Type
Array

(async) initialize() → {Object}

Initializes sub-modules, if any.

Source:
Inherited From:

Call the loader (typically, TwyrModuleLoader#initialize) to initialize sub-modules, if any.

Returns:
  • The aggregated status returned by sub-modules (if any) once they complete their initialization.
Type
Object

(async) load(configSrvc) → {Object}

Loads sub-modules, if any.

Source:
Inherited From:
  1. Use the supplied ConfigurationService instance (if any), to get / store both configuration and state.
  2. Call the loader (typically, TwyrModuleLoader#load) to load sub-modules, if any.
Parameters:
Name Type Description
configSrvc ConfigurationService

Instance of the ConfigurationService that supplies configuration.

Returns:
  • The aggregated status returned by sub-modules (if any) once they complete their loading.
Type
Object

(async) remove(pattern, api) → {boolean}

De-registers the api function as a handler for the pattern.

Source:
Parameters:
Name Type Description
pattern string

The pattern to which this api will respond.

api function

The api to be de-registered against the pattern.

Returns:

Boolean true/false - depending on whether the de-registration succeeded.

Type
boolean

(async) start(dependencies) → {Object}

Starts sub-modules, if any.

Source:
Inherited From:

Call the loader (typically, TwyrModuleLoader#start) to start sub-modules, if any.

Parameters:
Name Type Description
dependencies Object

Interfaces to TwyrBaseService instances that this module depends on.

Returns:
  • The aggregated status returned by sub-modules (if any) once they complete their startup sequences.
Type
Object

(async) stop() → {Object}

Stops sub-modules, if any.

Source:
Inherited From:

Call the loader (typically, TwyrModuleLoader#stop) to shutdown sub-modules, if any.

Returns:
  • The aggregated status returned by sub-modules (if any) once they complete their shutdown sequences.
Type
Object

(async) uninitialize() → {Object}

Uninitializes sub-modules, if any.

Source:
Inherited From:

Call the loader (typically, TwyrModuleLoader#uninitialize) to uninitialize sub-modules, if any.

Returns:
  • The aggregated status returned by sub-modules (if any) once they uninitialize themselves.
Type
Object

(async) unload() → {Object}

Unloads sub-modules, if any.

Source:
Inherited From:

Call the loader (typically, TwyrModuleLoader#unload) to unload sub-modules, if any.

Returns:
  • The aggregated status returned by sub-modules (if any) once they unload themselves.
Type
Object