nl::Weave::WeaveServerDelegateBase

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

Wspólna klasa bazowa do implementowania obiektów delegata serwera Weave.

Podsumowanie

Dziedziczenie

Direct Państwa-gotowa-klasa-1-lub-lub-dostaciprostacyl-1-3<br class="1-33-klasa-1-lub-dostaw3-lub-i-mail-do- swojego-do-zi-maila:<br class="baz-8:pl"><br class="1-3- Twojego pokoju:<br />





nl::Weave::Profiles::DeviceControl::DeviceControlDelegatenl::Weave::Profiles::FabricProvisioning::FabricProvisioningDelegatenl::Weave::Profiles::NetworkProvisioning::NetworkProvisioningDelegatenl::Weave::Profiles::ServiceProvisioning::ServiceProvisioningDelegatenl::Weave::Profiles::TokenPairing::TokenPairingDelegatenl::Weave::Profiles::Vendor::Nestlabs::DropcamLegacyPairing::DropcamLegacyPairingDelegate

Typy chronione

@69{
  kAccessControlResult_NotDetermined = 0,
  kAccessControlResult_Accepted = 1,
  kAccessControlResult_Rejected = 2,
  kAccessControlResult_Rejected_RespSent = 3,
  kAccessControlResult_Rejected_Silent = 4
}
enum | typ wyliczeniowy
AccessControlResult typedef
uint8_t

Funkcje chronione

EnforceAccessControl(ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, AccessControlResult & result)
virtual void
Wirtualna metoda określania zasad kontroli dostępu na poziomie wiadomości dla przychodzących wiadomości z żądaniami serwera.
WeaveServerDelegateBase(void)

Typy chronione

@69

 @69

AccessControlResult

uint8_t AccessControlResult

Funkcje chronione

EnforceAccessControl

virtual void EnforceAccessControl(
  ExchangeContext *ec,
  uint32_t msgProfileId,
  uint8_t msgType,
  const WeaveMessageInfo *msgInfo,
  AccessControlResult & result
)

Wirtualna metoda określania zasad kontroli dostępu na poziomie wiadomości dla przychodzących wiadomości z żądaniami serwera.

Ta metoda jest wywoływana przez infrastrukturę serwera Weave w celu określenia, czy przychodząca wiadomość z żądaniem powinna zostać normalnie zaakceptowana i przetworzona, czy odrzucona. Klasy delegata powiązane z implementacjami serwera Weave muszą zastąpić tę metodę, aby wdrożyć odpowiednie zasady kontroli dostępu dla swoich protokołów. Aplikacje mogą zastąpić tę metodę, aby obsługiwały zasady niestandardowe wykraczające poza te określone w standardowych implementacjach serwerów.

Implementacje tej metody powinny zwracać wartość wynikową „Zaakceptowano” lub „Odrzucono” w zależności od wyniku oceny zasad kontroli dostępu. Zwrócenie wyniku Odrzucono powoduje wysłanie raportu StatusReport do osoby wysyłającej prośbę o statusie Common/AccessDenied. Implementacje metod mogą też wysyłać własne odpowiedzi, takie jak StatusReport lub inny rodzaj wiadomości. W tym przypadku metoda powinna zwracać wynik Odrzuć_RespSent, by zasygnalizować, że odpowiedź została już wysłana. Implementacje mogą też zwracać odpowiedź Odrzuć_Silent, by wskazać, że żądanie powinno zostać odrzucone bez wysyłania odpowiedzi do osoby wysyłającej prośbę.

Klasy, które zastępują metodę EnforceAccessControl(), muszą w zgłaszanych przypadkach wywoływać metodę o podobnych nazwach w bezpośrednio klasach nadrzędnych. Może to być klasa WeaveServerDelegateBase lub klasa pobrana z tej klasy. Metody zastępowania powinny najpierw zaktualizować wartość wyniku przez określenie zasady kontroli dostępu, a następnie wywołać swoją klasę bazową, aby określić jej klasę.

Szczegóły
Parametry
[in] ec
ExchangeContext, przez które została odebrana wiadomość.
[in] msgProfileId
Identyfikator profilu odebranej wiadomości.
[in] msgType
Typ odebranej wiadomości.
[in] msgInfo
Struktura WeaveMessageInfo zawierająca informacje o odebranej wiadomości.
[in,out] result
Wartość wyliczona opisująca wynik oceny zasady kontroli dostępu dla odebranej wiadomości. Po wprowadzeniu tej metody wartość reprezentuje wstępny wynik na bieżącym etapie procesu oceny. Po zwróceniu wynik powinien stanowić ostateczną ocenę zasad kontroli dostępu dla wiadomości.

WeaveServerDelegateBase

 WeaveServerDelegateBase(
  void
)