nl::Weave::WeaveServerBase

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

Objet de base commun pour l'implémentation de répondeurs (serveurs) non sollicités dans le profil Weave. Ce dispositif encapsule la validation des requêtes authentifiées et l'envoi de rapports d'état, et fournit un espace de stockage commun des membres de données pour l'état de la fabric et un gestionnaire d'échange.

Résumé

Héritage

Sous-classes directes connues :
  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

Attributs publics

ExchangeMgr
[READ ONLY] Exchange manager object
FabricState
[LECTURE UNIQUEMENT] Objet d'état Fabric

Fonctions statiques publiques

SendStatusReport(ExchangeContext *ec, uint32_t statusProfileId, uint16_t statusCode, WEAVE_ERROR sysError)
Envoyez un rapport d'état Weave avec des indicateurs de message par défaut à l'initiateur sur l'échange spécifié contenant le code d'état dans le profil spécifié et l'erreur système.
SendStatusReport(ExchangeContext *ec, uint32_t statusProfileId, uint16_t statusCode, WEAVE_ERROR sysError, uint16_t sendFlags)
Envoyez un rapport d'état Weave avec les indicateurs de message fournis à l'initiateur sur l'échange spécifié, contenant le code d'état dans le profil spécifié et l'erreur système.

Fonctions protégées

EnforceAccessControl(ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, WeaveServerDelegateBase *delegate)
bool
Déterminez si un message de requête entrante à un serveur Weave doit être accepté ou supprimé.
WeaveServerBase(void)

Attributs publics

ExchangeMgr

WeaveExchangeManager * ExchangeMgr

[READ ONLY] Exchange manager object

FabricState

WeaveFabricState * FabricState

[LECTURE UNIQUEMENT] Objet d'état Fabric

Fonctions statiques publiques

SendStatusReport

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

Envoyez un rapport d'état Weave avec des indicateurs de message par défaut à l'initiateur sur l'échange spécifié contenant le code d'état dans le profil spécifié et l'erreur système.

Détails
Paramètres
[in] ec
Pointeur vers le contexte d'échange sur lequel envoyer le rapport d'état.
[in] statusProfileId
Profil du code d'état spécifié.
[in] statusCode
Code d'état à envoyer.
[in] sysError
Erreur système associée ou corrélée au code d'état.

SendStatusReport

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

Envoyez un rapport d'état Weave avec les indicateurs de message fournis à l'initiateur sur l'échange spécifié, contenant le code d'état dans le profil spécifié et l'erreur système.

Détails
Paramètres
[in] ec
Pointeur vers le contexte d'échange sur lequel envoyer le rapport d'état.
[in] statusProfileId
Profil du code d'état spécifié.
[in] statusCode
Code d'état à envoyer.
[in] sysError
Erreur système associée au code d'état ou en corrélation avec celui-ci.
[in] sendFlags
Indicateurs définis par l'application pour le rapport d'état Weave envoyé.

Fonctions protégées

EnforceAccessControl

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

Déterminez si un message de requête entrante à un serveur Weave doit être accepté ou supprimé.

Cette méthode est destinée à être utilisée par les implémentations de serveurs Weave pour implémenter une stratégie de contrôle d'accès extensible pour les messages de requête entrants. Les implémentations de serveur qui s'appuient sur des objets délégués doivent appeler cette méthode au début du traitement des messages pour déterminer si le traitement doit se poursuivre.

Cette méthode appelle la méthode virtuelle WeaveServerDelegateBase::EnforceAccessControl() sur le délégué fourni pour évaluer la stratégie de contrôle d'accès du message. Les classes de délégués de serveur Weave et les délégués spécifiques à l'application dérivés des classes de serveur standards doivent remplacer la méthode virtuelle pour appliquer des règles de contrôle d'accès spécifiques.

Détails
Paramètres
[in] ec
Le ExchangeContext sur lequel le message a été reçu.
[in] msgProfileId
ID du profil du message reçu.
[in] msgType
Type du message reçu.
[in] msgInfo
Structure WeaveMessageInfo contenant des informations sur le message reçu.
[in] delegate
Objet délégué fourni par l'application qui peut être utilisé pour remplacer la stratégie de contrôle des accès aux messages par défaut.
Valeurs renvoyées
true
Indique si le message doit être accepté et traité normalement.
false
Indique si le traitement du message doit s'arrêter et si le message doit être supprimé.

WeaveServerBase

 WeaveServerBase(
  void
)