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
[LIRE SEULE] Objet Exchange Manager
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 de 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 de 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 entrant vers un serveur Weave doit être accepté ou supprimé.
WeaveServerBase(void)

Attributs publics

ExchangeMgr

WeaveExchangeManager * ExchangeMgr

[LIRE SEULE] Objet Exchange Manager

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 de 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 de la place de marché pour lequel envoyer le rapport d'état.
[in] statusProfileId
Profil pour le 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.

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 de 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 de la place de marché pour lequel envoyer le rapport d'état.
[in] statusProfileId
Profil pour le 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 entrant vers 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 leur 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 déléguées de serveur Weave et les délégués spécifiques à l'application dérivés des classes de serveur standard doivent remplacer la méthode virtuelle pour appliquer des stratégies 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 de 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 et pouvant être utilisé pour ignorer la règle de contrôle d'accès aux messages par défaut.
Valeurs renvoyées
true
Indique si le message doit être accepté et traité normalement.
false
Si le traitement des messages doit s'arrêter et que le message doit être supprimé.

WeaveServerBase

 WeaveServerBase(
  void
)