nl:: Weave:: WeaveServerDelegateBase
#include <src/lib/core/WeaveServerBase.h>
Una classe di base comune per l'implementazione di oggetti delegati del server Weave.
Riepilogo
Eredità
Sottoclassi note dirette:nl::Weave::Profiles::DeviceControl::DeviceControlDelegate
nl::Weave::Profiles::FabricProvisioning::FabricProvisioningDelegate
nl::Weave::Profiles::NetworkProvisioning::NetworkProvisioningDelegatenl::Weave::Profiles::ServiceProvisioning::ServiceProvisioningDelegatenl::Weave::Profiles::TokenPairing::TokenPairingDelegatenl::Weave::Profiles::Vendor::Nestlabs::DropcamLegacyPairing::DropcamLegacyPairingDelegate
Tipi protetti |
|
---|---|
@69{
|
enum |
AccessControlResult
|
typedefuint8_t
|
Funzioni protette |
|
---|---|
EnforceAccessControl(ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, AccessControlResult & result)
|
virtual void
Metodo virtuale per determinare il criterio di controllo dell'accesso a livello di messaggio per i messaggi di richiesta del server in arrivo.
|
WeaveServerDelegateBase(void)
|
|
Tipi protetti
@69
@69
AccessControlResult
uint8_t AccessControlResult
Funzioni protette
EnforceAccessControl
virtual void EnforceAccessControl( ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, AccessControlResult & result )
Metodo virtuale per determinare il criterio di controllo dell'accesso a livello di messaggio per i messaggi di richiesta del server in arrivo.
Questo metodo viene chiamato dall'infrastruttura server Weave per determinare se un messaggio di richiesta in entrata deve essere accettato ed elaborato normalmente o essere rifiutato. Le classi delegate associate alle implementazioni del server Weave devono sostituire questo metodo per implementare criteri di controllo dell'accesso appropriati per i loro protocolli. Le applicazioni possono sostituire ulteriormente questo metodo per supportare criteri personalizzati oltre a quelli forniti dalle implementazioni standard dei server.
Le implementazioni di questo metodo dovrebbero restituire il valore Accettato o Rifiutato in base al risultato della valutazione dei criteri di controllo dell'accesso. La restituzione di un risultato di tipo Rifiutato comporta l'invio di un report StatusReport al richiedente con lo stato Common/AccessDenied. In alternativa, le implementazioni del metodo possono scegliere di inviare le proprie risposte, ad esempio uno StatusReport o qualsiasi altro tipo di messaggio. In questo caso, il metodo dovrebbe restituire un risultato di Rifiuta_RespSent per segnalare che è già stata inviata una risposta. Infine, le implementazioni possono restituire Rifiuta_Silent per indicare che la richiesta deve essere rifiutata senza inviare una risposta al richiedente.
Le classi che eseguono l'override del metodo EnforceAccessControl() sono necessarie nei casi di chiamata per chiamare il metodo con nome simile sulla relativa classe principale immediata, che sia la classe WeaveServerDelegateBase o una classe derivata da quella classe. L'override dei metodi deve prima aggiornare il valore del risultato con la relativa determinazione del criterio di controllo dell'accesso, quindi chiamare la rispettiva classe di base per determinarne il valore.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
WeaveServerDelegateBase
WeaveServerDelegateBase( void )