2018-09-18 15:17:34 +03:00
|
|
|
|
/**
|
|
|
|
|
* Глобальное дерево, от которого отнаследованы все остальные. <br>
|
|
|
|
|
* Копирует идеологию ядра. <br>
|
|
|
|
|
* Ноды этого дерева имеют доступ только к списку своих потомков.
|
|
|
|
|
*
|
2018-09-19 14:49:06 +03:00
|
|
|
|
* @manager
|
2018-09-18 15:17:34 +03:00
|
|
|
|
* @class GlobalTree
|
|
|
|
|
* @memberof Trees
|
|
|
|
|
*/
|
|
|
|
|
function GlobalTree() {
|
|
|
|
|
/**
|
|
|
|
|
* Возвращает ссылку на ноду. В качестве идентификатора надо указать идентификатор ноды.<br>
|
|
|
|
|
* <br> Работает через промис.
|
|
|
|
|
*
|
|
|
|
|
* @public
|
|
|
|
|
* @function get
|
|
|
|
|
* @param {v2.integer} nodeId Уникальный идентификатор ноды в дереве
|
2018-09-19 13:40:04 +03:00
|
|
|
|
* @returns {tools.promise}
|
2018-09-18 15:17:34 +03:00
|
|
|
|
* @memberof Trees.GlobalTree
|
|
|
|
|
*/
|
|
|
|
|
this.get = function(nodeId) {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Позволяет удалить динамический атрибут ноды. <br>
|
|
|
|
|
* Возвращает булевое значение об операции
|
|
|
|
|
*
|
|
|
|
|
* @public
|
|
|
|
|
* @function remove
|
|
|
|
|
* @param {v2.string} nodeId Уникальный идентификатор ноды в дереве
|
|
|
|
|
* @returns {boolean}
|
|
|
|
|
* @memberof Trees.GlobalTree
|
|
|
|
|
*/
|
|
|
|
|
this.remove = function(nodeId) {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Возвращает адрес дерева в системе
|
|
|
|
|
*
|
|
|
|
|
* @public
|
|
|
|
|
* @function sys_addr
|
|
|
|
|
* @returns {v2.address}
|
|
|
|
|
* @memberof Trees.GlobalTree
|
|
|
|
|
*/
|
|
|
|
|
this.sys_addr = function() {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Нода дерева.<br>
|
|
|
|
|
* Представляет интефрейс для доступа к данным глобальной ноды в ядре.<br>
|
|
|
|
|
* Позволяет узнать потомков ноды<br>
|
|
|
|
|
*
|
|
|
|
|
* @class Node
|
|
|
|
|
* @memberof Trees.GlobalTree
|
|
|
|
|
*/
|
|
|
|
|
function Node() {
|
|
|
|
|
/**
|
|
|
|
|
* Возвращает ссылку на атрибут ноды.<br>
|
|
|
|
|
* <br> Работает через промис.
|
|
|
|
|
*
|
|
|
|
|
* @public
|
|
|
|
|
* @function get
|
|
|
|
|
* @param {v2.string} attributeName Имя атрибута
|
2018-09-19 13:40:04 +03:00
|
|
|
|
* @returns {tools.promise}
|
2018-09-18 15:17:34 +03:00
|
|
|
|
* @memberof Trees.GlobalTree.Node
|
|
|
|
|
*/
|
|
|
|
|
this.get = function(attributeName) {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Добавляет новый динамический атрибут в ноду.<br>
|
|
|
|
|
* Ничего не возвращает.
|
|
|
|
|
*
|
|
|
|
|
* @public
|
|
|
|
|
* @function add_node
|
|
|
|
|
* @param {v2.vc} _attrs
|
|
|
|
|
* @memberof Trees.GlobalTree.Node
|
|
|
|
|
*/
|
|
|
|
|
this.add_node = function(_attrs) {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Возвращает уникальный идентификатор ноды.
|
|
|
|
|
*
|
|
|
|
|
* @public
|
|
|
|
|
* @function id
|
|
|
|
|
* @returns {v2.integer}
|
|
|
|
|
* @memberof Trees.GlobalTree.Node
|
|
|
|
|
*/
|
|
|
|
|
this.id = function() {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Возвращает список потомков ноды.<br>
|
|
|
|
|
* <br> Работает через промис.
|
|
|
|
|
*
|
|
|
|
|
* @public
|
|
|
|
|
* @function children
|
2018-09-19 13:40:04 +03:00
|
|
|
|
* @returns {tools.promise}
|
2018-09-18 15:17:34 +03:00
|
|
|
|
* @memberof Trees.GlobalTree.Node
|
|
|
|
|
*/
|
|
|
|
|
this.children = function() {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Доступ к менеджеру детей
|
|
|
|
|
* @public
|
|
|
|
|
* @function cm
|
|
|
|
|
* @returns {Children}
|
|
|
|
|
* @memberof Trees.GlobalTree.Node
|
|
|
|
|
*/
|
|
|
|
|
this.cm = function() {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Интерфейс позволяющей пользователю работать с потомками ноды
|
|
|
|
|
*
|
2018-09-19 14:49:06 +03:00
|
|
|
|
* @manager
|
2018-09-18 15:17:34 +03:00
|
|
|
|
* @class Children
|
|
|
|
|
* @memberof Trees.GlobalTree.Node
|
|
|
|
|
*/
|
|
|
|
|
function Children() {
|
|
|
|
|
/**
|
|
|
|
|
* Возвращает список потомков ноды
|
|
|
|
|
*
|
|
|
|
|
* @public
|
|
|
|
|
* @function get
|
|
|
|
|
* @returns {v2.list(v2.integer.type)}
|
|
|
|
|
* @memberof Trees.GlobalTree.Node.Children
|
|
|
|
|
*/
|
|
|
|
|
this.children = function(attributeName) {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Возвращает тип ноды, по ее идентификатору
|
|
|
|
|
*
|
|
|
|
|
* @public
|
|
|
|
|
* @function get_type_by_id
|
|
|
|
|
* @returns {v2.model_type}
|
|
|
|
|
* @memberof Trees.GlobalTree.Node.Children
|
|
|
|
|
*/
|
|
|
|
|
this.get_type_by_id = function(attributeName) {
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
|