import StreamBusEngine from 'devapt-core-common/js/messaging/stream_bus_engine.js'
StreamBusEngine
Stream based bus engine class for message bus client or server.
Example:
API:
->constructor(arg_name,arg_settings,arg_log_context,arg_logger_manager).
->channel_list():array - List engine channels.
->channel_add(arg_channel):nothing - Add a channel.
->channel_send(arg_channel, arg_payload):nothing - Send a message into a channel.
->channel_on(arg_channel, arg_handler):nothing - Subscribe on channel inputs.
->channel_transform(arg_in_channel, arg_out_channel, arg_xform_handler):nothing - Transform payload of input channel to output channel.
Constructor Summary
Public Constructor | ||
public |
constructor(arg_name: string, arg_settings: object, arg_log_context: string, arg_logger_manager: LoggerManager): nothing Create a bus. |
Method Summary
Public Methods | ||
public |
channel_add(arg_channel: string): nothing Add a channel. |
|
public |
channel_list(): array List engine channels. |
|
public |
channel_on(arg_channel: string, arg_handler: function, arg_predicate: function): nothing Subscribe on channel inputs. |
|
public |
channel_send(arg_channel: string, arg_payload: object): nothing Send a message into a channel. |
Inherited Summary
From class Loggable | ||
public |
Log context. |
|
public |
Class type flag. |
|
public |
Trace is enabled for this flag. |
|
private |
Logger manager instance (default undefined) |
|
public |
Trace DEBUG formatted message. |
|
public |
disable_trace(): nothing Disable traces. |
|
public |
enable_trace(): nothing Enable traces. |
|
public |
enter_group(arg_group: string): nothing Trace INFO message on "enter trace group". |
|
public |
Trace ERROR formatted message. |
|
public |
Define get class name method for non Instance classes. |
|
public |
Get instance context. |
|
public |
Get logger manager. |
|
public |
Define get instance name method for non Instance classes. |
|
public |
Get trace flag. |
|
public |
Trace INFO formatted message. |
|
public |
leave_group(arg_group: string): nothing Trace INFO message on "leave trace group". |
|
public |
separate_level_1(): nothing Trace INFO trace level 1 separator. |
|
public |
separate_level_2(): nothing Trace INFO trace level 2 separator. |
|
public |
separate_level_3(): nothing Trace INFO trace level 3 separator. |
|
public |
Set trace flag. |
|
public |
should_trace(arg_traces_cfg: object): boolean Calculate should trace flag. |
|
public |
should_trace_class(arg_traces_cfg: object): boolean Calculate should trace flag for classes. |
|
public |
should_trace_collection_item(arg_traces_cfg: object, arg_collection_name: string, arg_this_item_accessor: string): boolean Calculate should trace flag for given collection of names or patterns. |
|
public |
should_trace_module(arg_traces_cfg: object): boolean Calculate should trace flag for modules. |
|
public |
should_trace_name(arg_traces_cfg: object): boolean Calculate should trace flag for instances names. |
|
public |
Toggle trace flag. |
|
public |
update_trace_enabled(): nothing Update trace enabled flag. |
|
public |
Trace WARN formatted message. |
From class Errorable | ||
private |
Error text (default null). |
|
private |
Has error flag (default false). |
|
public |
Set an error. |
|
public |
Default helper for "not implemented" error. |
|
public |
Get error message. |
|
public |
Test is an error is set. |
From class Settingsable | ||
public |
Instance settings (default undefined). |
|
public |
Class type flag. |
|
public |
get_setting(arg_name: string | array, arg_default: any): any Get a value in settings for given key. |
|
public |
get_setting_js(arg_name: string | array, arg_default: any): any Get a value in settings for given key. |
|
public |
get_settings(): Immutable.Map Get instance settings. |
|
public |
get_settings_js(): Immutable.Map Get instance settings. |
|
public |
has_setting(arg_name: string): boolean Test if a key exists in settings. |
|
public |
set_setting(arg_name: string, arg_value: any): nothing Set a value in settings for given key. |
|
public |
set_settings(arg_settings: Immutable.Map): nothing Set instance settings. |
From class Stateable | ||
public |
Class type flag. |
|
public |
state_path: array State path in runtime state. |
|
private |
Initial state. |
|
private |
_runtime: Runtime Runtime isntance. |
|
private |
State store. |
|
private |
_state_value_listeners: array State changes handlers. |
|
public |
dispatch_action(arg_action_type: string | object, arg_options: object | undefined): nothing Dispatch a state action. |
|
public |
get_initial_state(): Immutable.Map Get initial state, an immutable object from a Redux data store. |
|
public |
Get name. |
|
public |
Get runtime instance. |
|
public |
get_state(): Immutable.Map Get current state, an immutable object from a Redux data store. |
|
public |
Get current state, an immutable object from a Redux data store. |
|
public |
get_state_path(): array Get state path into a Redux data store. |
|
public |
Get state store. |
|
public |
get_state_value(arg_key_or_path: string | array, arg_default_value: any): any Get a state entry. |
|
public |
handle_state_change(arg_previous_state: Immutable.Map, arg_new_state: Immutable.Map): nothing Handle component state changes. |
|
public |
register_state_value_change_handle(arg_path: string | array, arg_listener: string | function): nothing Register a state value change listener. |
From class Instance | ||
public |
Instance class name. |
|
public |
Instance id. |
|
public |
Instance name. |
|
public |
Instance collection name. |
|
public |
Class type flag. |
|
public |
Instance is loaded flag. |
|
public |
Get instance class. |
|
public |
Get instance description: {$type:..., $class:..., $id:..., $name:...}. |
|
public |
Get instance description string: $type:..., $class:..., $id:..., $name:.... |
|
public |
Get instance unique id. |
|
public |
Get instance unique name. |
|
public |
Get instance type. |
|
public |
Test if this code run inside a browser. |
|
public |
Test if this code run on a browser. |
|
public abstract |
load(): nothing Load instance settings. |
From class BusEngine | ||
public |
Class type flag. |
|
private |
_engine_host: * |
|
private |
_engine_port: * |
|
private |
|
|
private |
_engine_type: * |
|
private |
_engine_url: * |
|
public |
channel_add(arg_channel: string): nothing Add a channel. |
|
public |
channel_list(): array List engine channels. |
|
public |
channel_on(arg_channel: string, arg_handler: function, arg_predicate: function): function Subscribe on channel inputs. |
|
public |
channel_send(arg_channel: string, arg_payload: object): nothing Send a message into a channel. |
|
public |
channel_transform(arg_in_channel: string, arg_out_channel: string, arg_handler: function): nothing Transform payload of input channel to output channel. |
Public Constructors
public constructor(arg_name: string, arg_settings: object, arg_log_context: string, arg_logger_manager: LoggerManager): nothing source
Create a bus.
Override:
BusEngine#constructorParams:
Name | Type | Attribute | Description |
arg_name | string | instance name. |
|
arg_settings | object | settings. |
|
arg_log_context | string | trace context. |
|
arg_logger_manager | LoggerManager | logger manager object (optional). |
Return:
nothing |
Public Methods
public channel_add(arg_channel: string): nothing source
Add a channel.
Override:
BusEngine#channel_addParams:
Name | Type | Attribute | Description |
arg_channel | string | channel name. |
Return:
nothing |
public channel_list(): array source
List engine channels.
Override:
BusEngine#channel_listReturn:
array |
public channel_on(arg_channel: string, arg_handler: function, arg_predicate: function): nothing source
Subscribe on channel inputs.
Override:
BusEngine#channel_onReturn:
nothing |