initi.doc/docfiles/providers/managers/trees/manager.js

130 lines
5.8 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/**
* ### Менеджер деревьев.
*
* Представляет собой интерфейс для доступа ко всем деревьям
*
* Позволяет по тегу дерева получить на него ссылку.
*
* Деревья представляют собой следующую иерархию наследования
*
* ```bash
* // доступ
* ps.pl.tm
* ```
*
* <br>
*
* {@link Trees.GlobalTree GlobalTree} - любое дерево (обладает возможностью открывать свою иерархию)
* > {@link Trees.SchemeTree SchemeTree} - дерево топологии "st"
*
* > {@link Trees.GlobalAttributeTree GlobalAttributeTree} - любое дерево, которое обладает атрибутами (используется как дефолтное)
* > > {@link Trees.DesktopTree DesktopTree} - дерево рабочего стола "dsk"
*
* > > {@link Trees.UserAttributeTree UserAttributeTree} - дерево пользовательских параметров "uat"
*
* > > {@link Trees.RemoteModulesTree RemoteModulesTree} - дерево сборщиков данных "rmt"
*
* > > {@link Trees.FiltersTree FiltersTree} - дерево фильтров "flt"
*
* > > {@link Trees.ConsistencyTree ConsistencyTree} - дерево модельного каталога "cst"
*
*
*
* <br>
* Список доступных тегов деревьев:
*
* att - Массовые операций
* cedg - Вложенность линков
* chp - Провайдеры клик-хауса
* cmp - Компоненты
* cst - Вложенность компонентов
* dsk - Рабочий стол
* dst - Датасорсы
* ecst - Вложенность линков
* ect - Дерево событий
* edg - Дерево эджей (линков)
* gat - Глобальное дерево с атрибутами (Прототип)
* gt - Глобальное дерево (Прототип)
* flt - Фильтры
* fmt - Файловый менеджер
* ppt - Профили опроса
* prf - Профили авторизации
* rlt - Правила
* rmt - Сборщики данных
* rtt - Отчеты
* smptt - Мастер провайдеры
* ssptt - Слейв провайдеры
* st - Схема объектов
* uat - Пользовательские данные
* wmptt - WMI Master
* wsptt - WMI Slave
*
*
* <br>
* Связанные объекты:
*
* - {@link Trees.GlobalTree GlobalTree} - Здесь можно найти примеры, как работать с нодами дерева
* - {@link Trees.GlobalTree.Node GlobalTreeNode} - Здесь можно найти примеры, как работать с содержимым глобальной ноды
* - {@link Trees.GlobalAttributeTree.Node GlobalAttributesNode} - Здесь можно найти примеры, как работать с содержимым аттрибутной ноды
*
* @example
* // Работа с деревом
* // Доступ к менеджеру деревьев находится в переменной ps.pl.tm (провайдеры -> мастер платформа -> менеджер деревьев)
* // доступ к конкретному дереву осуществляется по тагу дерева например ("st", "rmt", "uat")
* // где st - дерево топологии, rmt - дерево сборщиков данных, uat - дерево в котором хранится информация о
* // данных пользователя
* ps.pl.tm.get(new v2.string("rmt")).then(function(ref){
* // ref - это ссылка на объект
* // метод value возвращает целевой объект. В данном случае дерево {@link Trees.RemoteModulesTree RemoteModulesTree}
* var tree = ref.value();
* }, function(err){
* // в случае неудачи придет ошибка.
* // обычно в ошибке содержится три переменные err - код ошибки, message - краткое описание, sub - если к этому
* // привела другая ошибка внутри системы.
* })
*
* @group manager
* @namespace Trees
*/
function Trees() {
/**
* Доступ к дереву
*
* В качестве идентификатора следует указать тег дерева.
*
* при успехе вернется {@link tools.reference} -> {@link Trees.GlobalTree}
*
* при отмене вернется ошибка {@link Errors.PromiseReject}
*
* @example
* // Пример использования:
* // Результатом будет нативный промис.
* var promise = ps.pl.tm.get(new v2.string("rmt"));
*
* @public
* @function get
* @param {v2.string} treeTag Тег дерева. Например: "rmt", "uat"
* @returns {tools.promise(Trees.GlobalTree)}
* @memberof Trees
*/
this.get = function (treeTag) {
};
/**
* Возвращает булевое значение о существовании дерева
*
* @example
* // Пример:
* var exist = ps.pl.tm.is_exist(new v2.string("rmt"));
*
* @public
* @function is_tree_exist
* @param {v2.string} treeTag Тег дерева. Например: "rmt", "uat"
* @returns {boolean}
* @memberof Trees
*/
this.is_tree_exist = function (treeTag) {
}
}