import TopologyDefineItem from 'devapt-core-common/js/topology/define/topology_define_item.js'
TopologyDefineItem
Extends:
Direct Subclass:
TopologyDefineItem class.
Example:
A Topology item is a runtime dynamic object corresponding to a static topology registry item.
Each item has a name, a tenant, a package, a version and initial settings.
Item sub class instances can have collections of children items.
Topology registry is shared and synchronized between all topology nodes with a master node to acknoledge changes.
Topology runtime is the dynamic corresponding part of a topology registry and is instancied on each node.
API:
->load():nothing - load Topology item settings.
->get_topology_info(arg_deep=true, arg_visited={}):object - get topology item informations.
->get_children():object - gt topology children items.
->get_topology_type():string - get resource topology type.
->get_topology_tenant():string - get resource topology tenant.
->get_topology_package():string - get resource topology package.
->get_topology_version():string - get resource topology version.
->get_topology_uid_desc():string - get resource topology uid description.
->get_topology_uid():string - get resource topology uid.
->get_topology_security():object - get resource topology security.
Constructor Summary
Public Constructor | ||
public |
constructor(arg_name: string, arg_settings: object, arg_class: string, arg_log_context: string): nothing Create a topology item instance. |
Member Summary
Public Members | ||
public |
|
|
public |
DEFAULT_SECURITY: {} |
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
|
|
public |
topology_uid: * |
|
public |
|
|
public |
|
Method Summary
Public Methods | ||
public |
compare_versions(arg_op: string, arg_version1: string, arg_version2: string): boolean Compare two versions. |
|
public |
declare_collection(arg_plural_name: string, arg_single_name: string, arg_topology_class: class, arg_init_cb: function): nothing Load a collection of topology items. |
|
public |
dump_topology_info(arg_info: object, arg_tabs: string, arg_eol: string, arg_write: function): nothing Dump topology item informations. |
|
public |
Get exporting settings. |
|
public |
Get topology children items. |
|
public |
get_children_names(): array Get children names. |
|
public |
get_topology_info(arg_deep: boolean, arg_visited: object): object Get topology item informations. |
|
public |
Get topology owner. |
|
public |
Get resource topology package. |
|
public |
Get resource topology security. |
|
public |
Get resource topology tenant. |
|
public |
Get resource topology type. |
|
public |
Get resource topology uid. |
|
public |
Get resource topology uid description. |
|
public |
Get resource topology version. |
|
public |
Check functional format. |
|
public |
Load Topology item settings. |
|
public |
load_collection(arg_collection_name: string, arg_collection: object, arg_topology_class: class, arg_init_cb: function): Promise Load a collection of topology items. |
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. |
Public Constructors
Public Members
public DEFAULT_SECURITY: {} source
public [arg_plural_name]: * source
public [arg_single_name]: * source
public topology_children: {} source
public topology_owner: * source
public topology_package: * source
public topology_security: * source
public topology_tenant: * source
public topology_type: * source
public topology_uid: * source
public topology_uid_desc: * source
public topology_version: * source
Public Methods
public compare_versions(arg_op: string, arg_version1: string, arg_version2: string): boolean source
Compare two versions. @TODO: use node-semver
public declare_collection(arg_plural_name: string, arg_single_name: string, arg_topology_class: class, arg_init_cb: function): nothing source
Load a collection of topology items.
Params:
Name | Type | Attribute | Description |
arg_plural_name | string | plural name of the collection. |
|
arg_single_name | string | single name of the collection item. |
|
arg_topology_class | class | item TopologyDefineItem child class. |
|
arg_init_cb | function | optional callback to complete item loading:(name,settings)=>Promise(boolean). |
Return:
nothing |
public dump_topology_info(arg_info: object, arg_tabs: string, arg_eol: string, arg_write: function): nothing source
Dump topology item informations.
Return:
nothing |
public get_topology_info(arg_deep: boolean, arg_visited: object): object source
Get topology item informations.
public load_collection(arg_collection_name: string, arg_collection: object, arg_topology_class: class, arg_init_cb: function): Promise source
Load a collection of topology items.
Params:
Name | Type | Attribute | Description |
arg_collection_name | string | name of the collection in the item settings. |
|
arg_collection | object | child collection of items. |
|
arg_topology_class | class | item TopologyDefineItem child class. |
|
arg_init_cb | function | optional callback to complete item loading:(name,settings)=>Promise(boolean). |