nl::Weave::WeaveServerDelegateBase

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

Weave sunucu yetki verilmiş nesnelerini uygulamak için ortak bir temel sınıf.

Özet

Devralma

Direct Bilinen Alt Sınıflar:
: Mrs:Kıbrıslı




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

Korunan türler

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

Korunan işlevler

EnforceAccessControl(ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, AccessControlResult & result)
virtual void
Gelen sunucu isteği iletileri için ileti düzeyinde erişim denetimi politikasını belirlemenin sanal yöntemi.
WeaveServerDelegateBase(void)

Korunan türler

@69

 @69

AccessControlResult

uint8_t AccessControlResult

Korunan işlevler

EnforceAccessControl

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

Gelen sunucu isteği iletileri için ileti düzeyinde erişim denetimi politikasını belirlemenin sanal yöntemi.

Bu yöntem, gelen istek iletisinin normal şekilde kabul edilip işlenmesinin veya reddedilmesinin gerekip gerekmediğini belirlemek için Weave sunucu altyapısı tarafından çağrılır. Weave sunucu uygulamalarıyla ilişkili yetki verilmiş sınıflar, protokollerine uygun erişim denetimi politikalarını uygulamak için bu yöntemi geçersiz kılmalıdır. Uygulamalar, standart sunucu uygulamaları tarafından sağlananların ötesinde özel politikaları desteklemek için bu yöntemi de geçersiz kılabilir.

Bu yöntemin uygulanması durumunda, erişim denetimi politika değerlendirmesinin sonucuna göre Kabul Edildi veya Reddedildi olarak bir sonuç değeri döndürülmesi beklenir. Reddedildi sonucunun döndürülmesi, istekte bulunan kişiye Genel/Erişim Reddedildi durumunu içeren bir Durum Raporu gönderilmesine neden olur. Alternatif olarak, yöntem uygulamaları kendi yanıtlarını göndermeyi seçebilir. Bu yanıtlar bir StatusReport veya başka bir mesaj türü olabilir. Bu durumda, yöntem bir yanıtın zaten gönderildiğini belirtmek için Reddedilen_RespSent sonucunu döndürmelidir. Son olarak uygulamalar, isteğin istekte bulunana bir yanıt gönderilmeden reddedilmesi gerektiğini belirtmek için Reddet_Silent değerini döndürebilir.

Çağrı örneklerinde EnforceAccessControl() yöntemini geçersiz kılan sınıfların, üst sınıftaki benzer adlı yöntemi çağırması gerekir. Bu yöntem, WeaveServerDelegateBase sınıfı veya bu sınıftan türetilmiş bir sınıf olabilir. Geçersiz kılma yöntemlerinde öncelikle erişim denetimi politikasını belirlerken sonuç değeri güncellenmeli, ardından karar vermek için temel sınıfları çağrılmalıdır.

Ayrıntılar
Parametreler
[in] ec
İletinin alındığı ExchangeContext.
[in] msgProfileId
Alınan mesajın profil kimliği.
[in] msgType
Alınan iletinin ileti türü.
[in] msgInfo
Alınan ileti hakkında bilgi içeren bir WeaveMessageInfo yapısı.
[in,out] result
Alınan ileti için erişim denetimi politika değerlendirmesinin sonucunu açıklayan numaralanmış bir değer. Yönteme giren değer, değerlendirme sürecinin şu andaki kesinleşmemiş sonucu temsil eder. İade edildiğinde sonucun, ileti için erişim denetimi politikasının son değerlendirmesini temsil etmesi beklenir.

WeaveServerDelegateBase

 WeaveServerDelegateBase(
  void
)