nl::Weave::WeaveServerBase

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

Objeto base comum para implementar respondedores não solicitados (servidores) do perfil Weave, que encapsula a validação de solicitações autenticadas e o envio de relatórios de status, além de fornecer armazenamento de membros de dados comuns para o estado do fabric e um gerenciador de trocas.

Resumo

Herança

Subclasses conhecidas diretas:
  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
[SOMENTE LEITURA] Objeto do gerenciador de trocas
FabricState
[READ ONLY] Objeto de estado do Fabric

Funções estáticas públicas

SendStatusReport(ExchangeContext *ec, uint32_t statusProfileId, uint16_t statusCode, WEAVE_ERROR sysError)
Enviar um relatório de status do Weave com sinalizações de mensagem padrão para o iniciador na troca especificada contendo o código de status no perfil e o erro do sistema especificados.
SendStatusReport(ExchangeContext *ec, uint32_t statusProfileId, uint16_t statusCode, WEAVE_ERROR sysError, uint16_t sendFlags)
Enviar um relatório de status do Weave com as flags de mensagem fornecidas para o iniciador na troca especificada contendo o código de status no perfil e o erro do sistema especificados.

Funções protegidas

EnforceAccessControl(ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, WeaveServerDelegateBase *delegate)
bool
Determine se uma mensagem de solicitação recebida para um servidor do Weave deve ser aceita ou descartada.
WeaveServerBase(void)

Atributos públicos

ExchangeMgr

WeaveExchangeManager * ExchangeMgr

[SOMENTE LEITURA] Objeto do gerenciador do Exchange

FabricState

WeaveFabricState * FabricState

[SOMENTE LEITURA] Objeto de estado do Fabric

Funções estáticas públicas

SendStatusReport

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

Enviar um relatório de status do Weave com sinalizações de mensagem padrão para o iniciador na troca especificada contendo o código de status no perfil e o erro do sistema especificados.

Detalhes
Parâmetros
[in] ec
Um ponteiro para o contexto de troca para enviar o relatório de status.
[in] statusProfileId
O perfil para o código de status especificado.
[in] statusCode
O código de status a ser enviado.
[in] sysError
O erro do sistema associado ou correlacionado com o código de status.

SendStatusReport

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

Enviar um relatório de status do Weave com as flags de mensagem fornecidas para o iniciador na troca especificada contendo o código de status no perfil e o erro do sistema especificados.

Detalhes
Parâmetros
[in] ec
Um ponteiro para o contexto de troca para enviar o relatório de status.
[in] statusProfileId
O perfil para o código de status especificado.
[in] statusCode
O código de status a ser enviado.
[in] sysError
O erro do sistema associado ou correlacionado com o código de status.
[in] sendFlags
Flags definidas pelo aplicativo para o envio do relatório de status do Weave.

Funções protegidas

EnforceAccessControl

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

Determine se uma mensagem de solicitação recebida para um servidor do Weave deve ser aceita ou descartada.

Esse método é destinado a ser usado por implementações de servidor da Weave para implementar a política de controle de acesso extensível para mensagens de solicitação recebidas. As implementações de servidor que dependem de objetos delegados precisam chamar esse método no início do processamento da mensagem para determinar se o processamento vai continuar.

Esse método chama o método virtual WeaveServerDelegateBase::EnforceAccessControl() no delegado fornecido para avaliar a política de controle de acesso da mensagem. As classes de delegação do servidor do Weave e os delegados específicos do aplicativo derivados das classes de servidor padrão precisam substituir o método virtual para aplicar políticas de controle de acesso específicas.

Detalhes
Parâmetros
[in] ec
O ExchangeContext em que a mensagem foi recebida.
[in] msgProfileId
O ID do perfil da mensagem recebida.
[in] msgType
O tipo de mensagem recebida.
[in] msgInfo
Uma estrutura WeaveMessageInfo que contém informações sobre a mensagem recebida.
[in] delegate
O objeto delegado fornecido pelo aplicativo que pode ser usado para substituir a política padrão de controle de acesso a mensagens.
Valores de retorno
true
Se a mensagem precisa ser aceita e processada normalmente.
false
Se o processamento da mensagem deve parar e a mensagem deve ser descartada.

WeaveServerBase

 WeaveServerBase(
  void
)