Table of Contents

Interface ILersServer

Namespace
Lers
Assembly
Lers.System.dll

Представляет локальный или удаленный сервер ЛЭРС УЧЕТ. Интерфейс предназначен для внутреннего использования и будет изменен в одной из следующих версий.

public interface ILersServer : IDisposable
Inherited Members
Extension Methods

Properties

Accounts

Возвращает справочник учетных записей.

AccountManager Accounts { get; }

Property Value

AccountManager

CustomAttributes

Возвращает справочник атрибутов.

CustomAttributeManager CustomAttributes { get; }

Property Value

CustomAttributeManager

Data

Возвращает экземпляр класса для работы с данными.

ServerData Data { get; }

Property Value

ServerData

Equipment

Возвращает справочник оборудования.

IEquipmentManager Equipment { get; }

Property Value

IEquipmentManager

Incidents

Возвращает справочник нештатных ситуаций.

IncidentManager Incidents { get; }

Property Value

IncidentManager

IsConnected

Возвращает значение, определяющее, установлено ли соединение с сервером.

bool IsConnected { get; }

Property Value

bool

MeasurePoints

Возвращает справочник точек учета.

IMeasurePointManager MeasurePoints { get; }

Property Value

IMeasurePointManager

NodeGroups

Возвращает справочник групп объектов учета.

NodeGroupManager NodeGroups { get; }

Property Value

NodeGroupManager

Nodes

Возвращает справочник объектов учета.

INodeManager Nodes { get; }

Property Value

INodeManager

Notifications

Возвращает экземпляр класса для работы с уведомлениями.

NotificationCenter Notifications { get; }

Property Value

NotificationCenter

Permissions

Возвращает список разрешений для текущего пользователя.

IReadOnlyCollection<AccessRight> Permissions { get; }

Property Value

IReadOnlyCollection<AccessRight>

Rooms

Возвращает менеджер поквартирного учета.

IRoomManager Rooms { get; }

Property Value

IRoomManager

Methods

AddNotification(Operation, EntityType, int, NotificationHandler)

Добавляет подписку на уведомление от сервера.

NotificationEntry AddNotification(Operation operation, EntityType entityType, int entityId, NotificationHandler callback)

Parameters

operation Operation

Код операции.

entityType EntityType

Тип сущности.

entityId int

Идентификатор сущности.

callback NotificationHandler

Метод, который следует вызвать при получении уведомления.

Returns

NotificationEntry

Экземпляр NotificationEntry.

AddNotification(int, int, int, NotificationHandler)

Добавляет подписку на уведомление от сервера.

NotificationEntry AddNotification(int operationId, int entityTypeId, int entityId, NotificationHandler callback)

Parameters

operationId int

Код операции.

entityTypeId int

Тип сущности.

entityId int

Идентификатор сущности.

callback NotificationHandler

Метод, который следует вызвать при получении уведомления.

Returns

NotificationEntry

Экземпляр NotificationEntry.

ConnectAsync(string, ushort, ProxySettings, AuthenticationInfo, CancellationToken)

Асинхронно подключается к серверу ЛЭРС УЧЕТ с возможностью задания параметров прокси-сервера.

Task<RestoreSessionToken> ConnectAsync(string host, ushort port, ProxySettings proxy, AuthenticationInfo authInfo, CancellationToken cancellationToken = default)

Parameters

host string

Имя удаленного узла.

port ushort

Номер TCP-порта.

proxy ProxySettings

Параметры прокси-сервера. Если прокси-сервер не используется, то необходимо указать значение null.

authInfo AuthenticationInfo

Параметры аутентификации на сервере. Для обычной аутентификации по имени и паролю необходимо использовать BasicAuthenticationInfo.

cancellationToken CancellationToken

Returns

Task<RestoreSessionToken>

Задание, которое после окончания вернёт информацию об установленном подключении.

Disconnect(int, bool)

Выполняет отключение от сервера.

void Disconnect(int logoutTimeout, bool removeToken = false)

Parameters

logoutTimeout int

Таймаут на нормальное завершение сеанса работы (мс), после выхода которого, соединение будет принудительно разорвано.

removeToken bool

Если вход проводился с помощью токена, он будет удалён и больше не сможет использоваться для входа.

DisconnectAsync(int, bool)

Выполняет отключение от сервера.

Task DisconnectAsync(int logoutTimeout, bool removeToken = false)

Parameters

logoutTimeout int

Таймаут на нормальное завершение сеанса работы (мс), после выхода которого, соединение будет принудительно разорвано.

removeToken bool

Если вход проводился с помощью токена, он будет удалён и больше не сможет использоваться для входа.

Returns

Task

IsPermissionGranted(AccessRight)

Определяет, обладает ли текущий пользователь указанным разрешением.

bool IsPermissionGranted(AccessRight accessRight)

Parameters

accessRight AccessRight

Право доступа.

Returns

bool

Возвращает true если пользователь обладает указанным разрешением, иначе - false.

RemoveNotification(NotificationEntry)

Удаляет подписку на уведомление от сервера.

void RemoveNotification(NotificationEntry entry)

Parameters

entry NotificationEntry

Экземпляр NotificationEntry, который был возвращен методом AddNotification/>.

RemoveNotification(NotificationHandler)

Удаляет все подписки на уведомление от сервера, обработчиком которых является указанный метод.

void RemoveNotification(NotificationHandler callback)

Parameters

callback NotificationHandler

Метод, который вызывается при получении уведомления.

Events

VersionMismatch

Происходит во время подключения к серверу, если версия сервера отличается от версии среды Lers Framework.

event EventHandler<VersionMismatchEventArgs> VersionMismatch

Event Type

EventHandler<VersionMismatchEventArgs>