add v2 lib

This commit is contained in:
Aleksey Chichenkov 2018-09-19 14:49:06 +03:00
parent d666a13d72
commit 8ca929c8e5
18 changed files with 252 additions and 15 deletions

View file

@ -0,0 +1,21 @@
/**
* Менеджер тип групп.<br>
*
* @manager
* @namespace GroupTypes
*/
function GroupTypes() {
/**
* Вернет ссылку на Тип группы.
*
* @public
* @function get
* @memberof GroupTypes
* @param {v2.model_type} groupType Адрес модели
* @returns {tools.promise}
*/
this.get = function (_groupType) {
};
}

View file

@ -0,0 +1,50 @@
/**
*
* @class GroupType
* @memberof GroupTypes
*/
function GroupType() {
/**
*
* @public
* @function self
* @memberof GroupTypes.GroupType
* @returns {v2.vc}
*/
this.self = function() {
};
/**
*
* @public
* @function parent
* @memberof GroupTypes.GroupType
* @returns {v2.vc}
*/
this.parent = function() {
};
/**
*
* @public
* @function consist
* @memberof GroupTypes.GroupType
* @returns {v2.vc}
*/
this.consist = function() {
};
/**
*
* @public
* @function attributes
* @memberof GroupTypes.GroupType
* @returns {v2.map(v2.string.type, v2.vc.type)}
*/
this.attributes = function() {
};
}

View file

@ -0,0 +1,21 @@
/**
* Менеджер тип групп.<br>
*
* @manager
* @namespace ModelTypes
*/
function ModelTypes() {
/**
* Вернет ссылку на Тип группы.
*
* @public
* @function get
* @param {v2.string} modelType Адрес модели
* @returns {tools.promise}
* @memberof ModelTypes
*/
this.get = function (modelType) {
};
}

View file

@ -0,0 +1,23 @@
/**
* Менеджер моделей.<br>
* Представляет собой интерфейс для доступа ко всем моделям<br>
* Позволяет по адресу модели, получить на нее ссылку.<br>
*
* @manager
* @namespace Models
*/
function Models() {
/**
* Вернет ссылку на модель. В качестве идентификатора следует указать адрес дерева.
*
* @public
* @function get
* @param {v2.address} address Адрес модели
* @returns {tools.promise.native}
* @memberof Models
*/
this.get = function (address) {
};
}

View file

@ -0,0 +1,54 @@
/**
* Нода дерева.<br>
* Представляет интефрейс для доступа к данным устройства.<br>
* Позволяет получить список компонентов модели<br>
*
* @class Model
* @memberof Models
*/
function Model() {
/**
*
* @public
* @function address
* @memberof Models.Model
* @returns {v2.address}
*/
this.address = function() {
};
/**
*
* @public
* @function groups
* @memberof Models.Model
* @returns {tools.promise}
*/
this.groups = function() {
};
/**
*
* @public
* @function touch
* @memberof Models.Model
* @returns {tools.promise}
*/
this.touch = function() {
};
/**
*
* @public
* @function debug
* @memberof Models.Model
* @param {v2.address} destination
* @param {v2.address} variables
*/
this.debug = function(destination, variables) {
};
}

View file

@ -0,0 +1,30 @@
/**
* @class ModelType
* @manager
* @memberof ModelTypes
*/
function ModelType() {
/**
*
* @public
* @function get_group_type_id
* @memberof ModelTypes.ModelType
* @param {v2.string} alias
* @returns {v2.address}
*/
this.get_group_type_id = function(alias) {
};
/**
*
* @public
* @function aliases
* @memberof ModelTypes.ModelType
* @returns {v2.map(v2.string, v2.model_type)}
*/
this.aliases = function() {
};
}

View file

@ -0,0 +1,41 @@
/**
* Менеджер деревьев.<br>
* Представляет собой интерфейс для доступа ко всем деревьям<br>
* Позволяет по тегу дерева получить на него ссылку.<br>
* На текущий момент содержит в себе: <br>
* - global_tree (Основное дерево)<br>
* - global_attribute_tree (Дерево, которое предоставляет доступ к атрибутам)<br>
* - desktop_tree (Представляет рабочий стол)<br>
* - remote_modules_tree (Представляет собой дерево сборщиков)<br>
* - scheme_tree (Топология)<br>
* - user_attribute_tree (Пользовательские данные)<br>
*
* @manager
* @namespace Trees
*/
function Trees() {
/**
* Вернет ссылку на дерево. В качестве идентификатора следует указать тег дерева.
*
* @public
* @function get
* @param {v2.string} treeTag Тег дерева. Например: "rmt", "uat"
* @returns {tools.promise}
* @memberof Trees
*/
this.get = function (treeTag) {
};
/**
* Возвращает булевое значение о существовании дерева
*
* @public
* @function is_tree_exist
* @param {v2.string} treeTag Тег дерева. Например: "rmt", "uat"
* @returns {boolean}
* @memberof Trees
*/
this.is_tree_exist = function (treeTag) {
}
}

View file

@ -0,0 +1,18 @@
/**
* @manager
* @class DesktopTree
* @extends Trees.GlobalAttributeTree
* @memberof Trees
*/
function DesktopTree() {
}
/**
* @class Node
* @extends Trees.GlobalAttributeTree.Node
* @memberof Trees.DesktopTree
*/
function Node() {
}

View file

@ -0,0 +1,155 @@
/**
* Отнаследовано от глобального дерева. <br>
* Ноды этого дерева имеют доступ к атрибутам
*
* @manager
* @class GlobalAttributeTree
* @extends Trees.GlobalTree
* @memberof Trees
*/
function GlobalAttributeTree() {
}
/**
* @class Node
* @extends Trees.GlobalTree.Node
* @memberof Trees.GlobalAttributeTree
*/
function Node() {
/**
* Возвращает список всех атрибутов, включая динамические <br>
* <br> Работает через промис.
*
* @public
* @function attributes
* @returns {tools.promise}
* @memberof Trees.GlobalAttributeTree.Node
*/
this.attributes = function() {
};
/**
* Возвращает список базовых атрибутов ноды (их нельзя удалить) <br>
* <br> Работает через промис.
*
* @public
* @function base_attributes
* @returns {tools.promise}
* @memberof Trees.GlobalAttributeTree.Node
*/
this.base_attributes = function() {
};
/**
* Возвращает менеджер атрибутов ноды.
*
* @public
* @function am
* @returns {tools.promise}
* @memberof Trees.GlobalAttributeTree.Node
*/
this.am = function() {
};
}
/**
* Интерфейс позволяющей пользователю работать с атрибутами ноды
*
* @manager
* @class Attributes
* @memberof Trees.GlobalAttributeTree.Node
*/
function Attributes() {
/**
* Возвращает список атрибутов ноды
*
* @public
* @function attributes
* @returns {v2.map(v2.string.type, v2.vc.type)}
* @memberof Trees.GlobalAttributeTree.Node.Attributes
*/
this.attributes = function() {
};
/**
* Возвращает список базовых атрибутов ноды
*
* @public
* @function base_attributes
* @returns {v2.vc}
* @memberof Trees.GlobalAttributeTree.Node.Attributes
*/
this.base_attributes = function() {
};
/**
* Возвращает ссылку на атрибут ноды
*
* @public
* @function get
* @param {v2.string} attributeName
* @returns {tools.promise}
* @memberof Trees.GlobalAttributeTree.Node.Attributes
*/
this.get = function(attributeName) {
};
/**
* Проверяет наличие любого атрибута у ноды
*
* @public
* @function is_exist_attribute
* @param {v2.string} attributeName
* @returns {boolean}
* @memberof Trees.GlobalAttributeTree.Node.Attributes
*/
this.is_exist_attribute = function(attributeName) {
};
/**
* Провеляет наличие базового атрибута у ноды
*
* @public
* @function has_base_attribute
* @param {v2.string} attributeName
* @returns {boolean}
* @memberof Trees.GlobalAttributeTree.Node.Attributes
*/
this.has_base_attribute = function(attributeName) {
};
/**
* Добавляет динамические атрибуты в ноду
*
* @public
* @function add
* @param {v2.vc} attributes список атрибутов
* @returns {v2.model_type}
* @memberof Trees.GlobalAttributeTree.Node.Attributes
*/
this.add = function(attributes) {
};
/**
* Удаляет динамические атрибуты из ноды
*
* @public
* @function remove
* @param {v2.set(v2.string)} attributes
* @returns {v2.model_type}
* @memberof Trees.GlobalAttributeTree.Node.Attributes
*/
this.remove = function(attributes) {
};
}

View file

@ -0,0 +1,157 @@
/**
* Глобальное дерево, от которого отнаследованы все остальные. <br>
* Копирует идеологию ядра. <br>
* Ноды этого дерева имеют доступ только к списку своих потомков.
*
* @manager
* @class GlobalTree
* @memberof Trees
*/
function GlobalTree() {
/**
* Возвращает ссылку на ноду. В качестве идентификатора надо указать идентификатор ноды.<br>
* <br> Работает через промис.
*
* @public
* @function get
* @param {v2.integer} nodeId Уникальный идентификатор ноды в дереве
* @returns {tools.promise}
* @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 Имя атрибута
* @returns {tools.promise}
* @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
* @returns {tools.promise}
* @memberof Trees.GlobalTree.Node
*/
this.children = function() {
};
/**
* Доступ к менеджеру детей
* @public
* @function cm
* @returns {Children}
* @memberof Trees.GlobalTree.Node
*/
this.cm = function() {
};
}
/**
* Интерфейс позволяющей пользователю работать с потомками ноды
*
* @manager
* @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) {
};
}

View file

@ -0,0 +1,21 @@
/**
* Created by Aleksey Chichenkov <a.chichenkov@initi.ru> on 9/17/18.
*/
/**
* @manager
* @class RemoteModulesTree
* @extends Trees.GlobalAttributeTree
* @memberof Trees
*/
function RemoteModulesTree() {
}
/**
* @class Node
* @extends Trees.GlobalAttributeTree.Node
* @memberof Trees.RemoteModulesTree
*/
function Node() {
}

View file

@ -0,0 +1,18 @@
/**
* @manager
* @class SchemeTree
* @extends Trees.GlobalTree
* @memberof Trees
*/
function SchemeTree() {
}
/**
* @class Node
* @extends Trees.GlobalTree.Node
* @memberof Trees.SchemeTree
*/
function Node() {
}

View file

@ -0,0 +1,18 @@
/**
* @manager
* @class UserAttributeTree
* @extends Trees.GlobalAttributeTree
* @memberof Trees
*/
function UserAttributeTree() {
}
/**
* @class Node
* @extends Trees.GlobalAttributeTree.Node
* @memberof Trees.UserAttributeTree
*/
function Node() {
}