nl::Weave::WeaveServerBase

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

Oggetto comune di base per l'implementazione di risponditori non richiesti (server) del profilo Weave che incapsula la convalida di richieste autenticate e l'invio di report sullo stato, oltre a fornire spazio di archiviazione comune dei membri dei dati per lo stato della fabric e di un gestore di Exchange.

Riepilogo

Eredità

Direct Known Subclasses:
  nl::Weave::Profiles::DeviceControl::DeviceControlServer
  nl::Weave::Profiles::DeviceDescription::DeviceDescriptionServer
DropProfile nl::Weave::Profiles::Echo_Next::WeaveEchoServernl::Weave::Profiles::FabricProvisioning::FabricProvisioningServernl::Weave::Profiles::Heartbeat::WeaveHeartbeatReceivernl::Weave::Profiles::NetworkProvisioning::NetworkProvisioningServernl::Weave::Profiles::ServiceProvisioning::ServiceProvisioningServernl::Weave::Profiles::TokenPairing::TokenPairingServernl::Weave::Profiles::Vendor::Nestlabs::DropcamLegacyPairing::DropcamLegacyPairingServernl::Weave::Profiles::WeaveEchoServer

Attributi pubblici

ExchangeMgr
[SOLO LETTURA] Oggetto Exchange Manager
FabricState
[SOLO LETTURA] Oggetto stato fabric

Funzioni statiche pubbliche

SendStatusReport(ExchangeContext *ec, uint32_t statusProfileId, uint16_t statusCode, WEAVE_ERROR sysError)
Invia all'iniziatore un report sullo stato di Weave con flag di messaggi predefiniti sullo scambio specificato e contenente il codice di stato nel profilo specificato e l'errore di sistema.
SendStatusReport(ExchangeContext *ec, uint32_t statusProfileId, uint16_t statusCode, WEAVE_ERROR sysError, uint16_t sendFlags)
Invia un report sullo stato di Weave con i flag di messaggio forniti all'iniziatore sullo scambio specificato e contenente il codice di stato nel profilo specificato e l'errore di sistema.

Funzioni protette

EnforceAccessControl(ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, WeaveServerDelegateBase *delegate)
bool
Determina se un messaggio di richiesta in entrata verso un server Weave deve essere accettato o eliminato.
WeaveServerBase(void)

Attributi pubblici

ExchangeMgr

WeaveExchangeManager * ExchangeMgr

[SOLO LETTURA] Oggetto Exchange Manager

FabricState

WeaveFabricState * FabricState

[SOLO LETTURA] Oggetto stato fabric

Funzioni statiche pubbliche

SendStatusReport

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

Invia all'iniziatore un report sullo stato di Weave con flag di messaggi predefiniti sullo scambio specificato e contenente il codice di stato nel profilo specificato e l'errore di sistema.

Dettagli
Parametri
[in] ec
Un puntatore al contesto della piattaforma di scambio su cui inviare il report sullo stato.
[in] statusProfileId
Il profilo per il codice di stato specificato.
[in] statusCode
Il codice di stato da inviare.
[in] sysError
L'errore di sistema associato o correlato al codice di stato.

SendStatusReport

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

Invia un report sullo stato di Weave con i flag di messaggio forniti all'iniziatore sullo scambio specificato e contenente il codice di stato nel profilo specificato e l'errore di sistema.

Dettagli
Parametri
[in] ec
Un puntatore al contesto della piattaforma di scambio su cui inviare il report sullo stato.
[in] statusProfileId
Il profilo per il codice di stato specificato.
[in] statusCode
Il codice di stato da inviare.
[in] sysError
L'errore di sistema associato o correlato al codice di stato.
[in] sendFlags
Flag impostati dall'applicazione per il report sullo stato Weave inviato.

Funzioni protette

EnforceAccessControl

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

Determina se un messaggio di richiesta in entrata verso un server Weave deve essere accettato o eliminato.

Questo metodo è stato pensato per essere utilizzato dalle implementazioni del server Weave per implementare criteri di controllo dell'accesso estendibili per i messaggi di richiesta in entrata. Le implementazioni del server che si basano su oggetti delegati devono chiamare questo metodo all'inizio dell'elaborazione del messaggio per determinare se l'elaborazione deve continuare.

Questo metodo chiama il metodo virtuale WeaveServerDelegaBase::EnforceAccessControl() sul delegato specificato per valutare il criterio di controllo dell'accesso per il messaggio. Le classi delegati del server Weave e i delegati specifici per le applicazioni derivati dalle classi server standard devono sostituire il metodo virtuale per applicare criteri di controllo dell'accesso specifici.

Dettagli
Parametri
[in] ec
Il valore ExchangeContext per cui è stato ricevuto il messaggio.
[in] msgProfileId
L'ID profilo del messaggio ricevuto.
[in] msgType
Il tipo di messaggio ricevuto.
[in] msgInfo
Una struttura WeaveMessageInfo contenente informazioni sul messaggio ricevuto.
[in] delegate
L'oggetto delegato fornito dall'applicazione, che può essere utilizzato per sostituire il criterio di controllo dell'accesso ai messaggi predefinito.
Valori restituiti
true
Se il messaggio deve essere accettato ed elaborato normalmente.
false
Se l'elaborazione del messaggio si interrompe e il messaggio deve essere eliminato.

WeaveServerBase

 WeaveServerBase(
  void
)