нл:: Переплетение:: WeaveServerBase

#include <src/lib/core/WeaveServerBase.h>

Общий базовый объект для реализации незапрошенных ответчиков (серверов) профиля Weave, который инкапсулирует проверку аутентифицированных запросов и отправку отчетов о состоянии, а также обеспечивает общее хранилище данных для состояния структуры и диспетчера обмена.

Краткое содержание

Наследование

Прямые известные подклассы:
  nl::Weave::Profiles::DeviceControl::DeviceControlServer
  nl::Weave::Profiles::DeviceDescription::DeviceDescriptionServer
  nl::Weave::Profiles::Echo_Next::WeaveEchoServer
  nl::Weave::Profiles::FabricProvisioning::FabricProvisioningServer
  nl::Weave::Profiles::Heartbeat::WeaveHeartbeatReceiver
  nl::Weave::Profiles::NetworkProvisioning::NetworkProvisioningServer
  nl::Weave::Profiles::ServiceProvisioning::ServiceProvisioningServer
  nl::Weave::Profiles::TokenPairing::TokenPairingServer
  nl::Weave::Profiles::Vendor::Nestlabs::DropcamLegacyPairing::DropcamLegacyPairingServer
  nl::Weave::Profiles::WeaveEchoServer

Публичные атрибуты

ExchangeMgr
[ТОЛЬКО ДЛЯ ЧТЕНИЯ] Объект диспетчера обмена
FabricState
[ТОЛЬКО ДЛЯ ЧТЕНИЯ] Объект состояния структуры

Публичные статические функции

SendStatusReport ( ExchangeContext *ec, uint32_t statusProfileId, uint16_t statusCode, WEAVE_ERROR sysError)
Отправьте отчет о состоянии Weave с флагами сообщений по умолчанию инициатору на указанном обмене, содержащий код состояния в указанном профиле и системную ошибку.
SendStatusReport ( ExchangeContext *ec, uint32_t statusProfileId, uint16_t statusCode, WEAVE_ERROR sysError, uint16_t sendFlags)
Отправьте отчет о состоянии Weave с предоставленными флагами сообщений инициатору на указанном обмене, содержащий код состояния в указанном профиле и системную ошибку.

Защищенные функции

EnforceAccessControl ( ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, WeaveServerDelegateBase *delegate)
bool
Определите, следует ли принять или отклонить входящее сообщение запроса на сервер Weave.
WeaveServerBase (void)

Публичные атрибуты

ExchangeMgr

WeaveExchangeManager * ExchangeMgr

[ТОЛЬКО ДЛЯ ЧТЕНИЯ] Объект диспетчера обмена

Состояние Фабрики

WeaveFabricState * FabricState

[ТОЛЬКО ДЛЯ ЧТЕНИЯ] Объект состояния структуры

Публичные статические функции

Отправитьстатусрепорт

WEAVE_ERROR SendStatusReport(
  ExchangeContext *ec,
  uint32_t statusProfileId,
  uint16_t statusCode,
  WEAVE_ERROR sysError
)

Отправьте отчет о состоянии Weave с флагами сообщений по умолчанию инициатору на указанном обмене, содержащий код состояния в указанном профиле и системную ошибку.

Подробности
Параметры
[in] ec
Указатель на контекст обмена, по которому нужно отправить отчет о состоянии.
[in] statusProfileId
Профиль для указанного кода состояния.
[in] statusCode
Код состояния для отправки.
[in] sysError
Системная ошибка, связанная или коррелирующая с кодом состояния.

Отправитьстатусрепорт

WEAVE_ERROR SendStatusReport(
  ExchangeContext *ec,
  uint32_t statusProfileId,
  uint16_t statusCode,
  WEAVE_ERROR sysError,
  uint16_t sendFlags
)

Отправьте отчет о состоянии Weave с предоставленными флагами сообщений инициатору на указанном обмене, содержащий код состояния в указанном профиле и системную ошибку.

Подробности
Параметры
[in] ec
Указатель на контекст обмена, по которому нужно отправить отчет о состоянии.
[in] statusProfileId
Профиль для указанного кода состояния.
[in] statusCode
Код состояния для отправки.
[in] sysError
Системная ошибка, связанная или коррелирующая с кодом состояния.
[in] sendFlags
Флаги, установленные приложением для отправки отчета о состоянии Weave.

Защищенные функции

EnforceAccessControl

bool EnforceAccessControl(
  ExchangeContext *ec,
  uint32_t msgProfileId,
  uint8_t msgType,
  const WeaveMessageInfo *msgInfo,
  WeaveServerDelegateBase *delegate
)

Определите, следует ли принять или отклонить входящее сообщение запроса на сервер Weave.

Этот метод предназначен для использования реализациями сервера Weave для реализации расширяемой политики управления доступом для входящих сообщений запросов. Реализации сервера, которые полагаются на объекты делегата, должны вызывать этот метод на ранней стадии обработки сообщения, чтобы определить, следует ли продолжать обработку сообщения.

Этот метод вызывает виртуальный метод WeaveServerDelegateBase::EnforceAccessControl() для предоставленного делегата, чтобы оценить политику управления доступом для сообщения. Классы делегатов сервера Weave и делегаты для конкретных приложений, производные от стандартных серверных классов, должны переопределять виртуальный метод для обеспечения соблюдения определенных политик контроля доступа.

Подробности
Параметры
[in] ec
ExchangeContext , через который было получено сообщение.
[in] msgProfileId
Идентификатор профиля полученного сообщения.
[in] msgType
Тип полученного сообщения.
[in] msgInfo
Структура WeaveMessageInfo , содержащая информацию о полученном сообщении.
[in] delegate
Объект делегата, предоставляемый приложением, который можно использовать для переопределения политики управления доступом к сообщениям по умолчанию.
Возвращаемые значения
true
Если сообщение должно быть принято и обработано как обычно.
false
Если обработка сообщения должна быть остановлена ​​и сообщение должно быть отброшено.

WeaveServerBase

 WeaveServerBase(
  void
)