nl::Weave::WeaveServerBase

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

Es un objeto base común para implementar los objetos de respuesta no solicitados (servidores) del perfil de Weave que encapsulan la validación de solicitudes autenticadas y el envío de informes de estado, y proporciona almacenamiento de miembros de datos comunes para el estado de la fábrica y un administrador de intercambio.

Resumen

Herencia

Subclases conocidas directas:
  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

Atributos públicos

ExchangeMgr
[SOLO DE LECTURA] Objeto del administrador de intercambio
FabricState
[SOLO DE LECTURA] Objeto de estado de Fabric

Funciones estáticas públicas

SendStatusReport(ExchangeContext *ec, uint32_t statusProfileId, uint16_t statusCode, WEAVE_ERROR sysError)
Envía un informe de estado de Weave con marcas de mensaje predeterminadas al iniciador en el intercambio especificado que contenga el código de estado en el perfil especificado y el error del sistema.
SendStatusReport(ExchangeContext *ec, uint32_t statusProfileId, uint16_t statusCode, WEAVE_ERROR sysError, uint16_t sendFlags)
Envía un informe de estado de Weave con las marcas de mensaje proporcionadas al iniciador del intercambio especificado que contenga el código de estado en el perfil especificado y el error del sistema.

Funciones protegidas

EnforceAccessControl(ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, WeaveServerDelegateBase *delegate)
bool
Determina si se debe aceptar o descartar un mensaje de solicitud entrante a un servidor de Weave.
WeaveServerBase(void)

Atributos públicos

ExchangeMgr

WeaveExchangeManager * ExchangeMgr

[SOLO LECTURA] Objeto de administrador de Exchange

FabricState

WeaveFabricState * FabricState

[SOLO DE LECTURA] Objeto de estado de Fabric

Funciones estáticas públicas

SendStatusReport

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

Envía un informe de estado de Weave con marcas de mensajes predeterminadas al iniciador en el intercambio especificado que contenga el código de estado en el perfil y el error del sistema especificados.

Detalles
Parámetros
[in] ec
Un puntero al contexto de intercambio para enviar el informe de estado.
[in] statusProfileId
El perfil del código de estado especificado.
[in] statusCode
Es el código de estado que se enviará.
[in] sysError
El error del sistema asociado o correlacionado con el código de estado

SendStatusReport

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

Envía un informe de estado de Weave con las marcas de mensaje proporcionadas al iniciador en el intercambio especificado que contenga el código de estado en el perfil y el error del sistema especificados.

Detalles
Parámetros
[in] ec
Un puntero al contexto de intercambio para enviar el informe de estado.
[in] statusProfileId
El perfil del código de estado especificado.
[in] statusCode
Es el código de estado que se enviará.
[in] sysError
El error del sistema asociado o correlacionado con el código de estado
[in] sendFlags
Marcas establecidas por la aplicación para el informe de estado de Weave que se envía.

Funciones protegidas

EnforceAccessControl

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

Determina si se debe aceptar o descartar un mensaje de solicitud entrante a un servidor de Weave.

Este método está diseñado para que las implementaciones de servidores de Weave lo usen para implementar una política de control de acceso extensible para los mensajes de solicitud entrantes. Las implementaciones de servidor que dependen de objetos delegados deben llamar a este método al principio del procesamiento de mensajes para determinar si este debe continuar.

Este método llama al método virtual WeaveServerDelegateBase::EnforceAccessControl() en el delegado proporcionado para evaluar la política de control de acceso del mensaje. Las clases delegadas del servidor de Weave y los delegados específicos de la aplicación derivados de las clases de servidor estándar deben anular el método virtual para aplicar políticas de control de acceso específicas.

Detalles
Parámetros
[in] ec
El ExchangeContext a través del cual se recibió el mensaje.
[in] msgProfileId
El ID de perfil del mensaje recibido.
[in] msgType
El tipo de mensaje del mensaje recibido.
[in] msgInfo
Una estructura WeaveMessageInfo que contiene información sobre el mensaje recibido.
[in] delegate
El objeto delegado que proporciona la aplicación y que se puede usar para anular la política predeterminada de control de acceso a los mensajes.
Valores de retorno
true
Si se debe aceptar y procesar el mensaje como de costumbre.
false
Si se debe detener el procesamiento de mensajes y se debe descartar el mensaje.

WeaveServerBase

 WeaveServerBase(
  void
)