nl::Weave::WeaveServerDelegateBase

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

Class dasar umum untuk mengimplementasikan objek delegasi server Weave.

Ringkasan

Inheritance

Subclass yang Dikenal Langsung:
  nl::Weave::Profiles::DeviceControl::DeviceControlDelegate
  nl::Weave::Profiles::FabricProvisioning::FabricProvisioningDelegate
  nl::Weave::Profiles::NetworkProvisioning::NetworkProvisioningDelegate
  nl::Weave::Profiles::ServiceProvisioning::ServiceProvisioningDelegate
  nl::Weave::Profiles::TokenPairing::TokenPairingDelegate
  nl::Weave::Profiles::Vendor::Nestlabs::DropcamLegacyPairing::DropcamLegacyPairingDelegate

Jenis yang dilindungi

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

Fungsi yang dilindungi

EnforceAccessControl(ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, AccessControlResult & result)
virtual void
Metode virtual untuk menentukan kebijakan kontrol akses tingkat pesan untuk pesan permintaan server masuk.
WeaveServerDelegateBase(void)

Jenis yang dilindungi

@69

 @69

AccessControlResult

uint8_t AccessControlResult

Fungsi yang dilindungi

EnforceAccessControl

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

Metode virtual untuk menentukan kebijakan kontrol akses tingkat pesan untuk pesan permintaan server masuk.

Metode ini dipanggil oleh infrastruktur server Weave untuk menentukan apakah pesan permintaan masuk harus diterima dan diproses secara normal, atau ditolak. Class delegasi yang terkait dengan implementasi server Weave harus mengganti metode ini untuk menerapkan kebijakan kontrol akses yang sesuai bagi protokolnya. Aplikasi dapat mengganti metode ini lebih lanjut untuk mendukung kebijakan khusus di luar yang disediakan oleh penerapan server standar.

Penerapan metode ini diharapkan akan menampilkan nilai hasil Disetujui atau Ditolak berdasarkan hasil evaluasi kebijakan kontrol akses. Menampilkan hasil Ditolak menyebabkan StatusReport dikirim ke pemohon yang berisi status Umum/AccessDitolak. Sebagai alternatif, penerapan metode dapat memilih untuk mengirim responsnya sendiri, yang dapat berupa StatusReport atau jenis pesan lainnya. Dalam hal ini, metode harus menampilkan hasil Reject_RespSent untuk memberi sinyal bahwa respons telah dikirim. Terakhir, implementasi dapat menampilkan Reject_Silent untuk menunjukkan bahwa permintaan harus ditolak tanpa mengirimkan respons ke pemohon.

Class yang mengganti metode EnforceAccessControl() diperlukan dalam kasus panggilan untuk memanggil metode dengan nama yang sama di class induk langsungnya, baik class WeaveServerDelegateBase, atau class yang berasal dari class tersebut. Metode penggantian harus terlebih dahulu memperbarui nilai hasil dengan penentuan kebijakan kontrol akses, lalu memanggil class dasarnya untuk menentukannya.

Detail
Parameter
[in] ec
ExchangeContext tempat pesan diterima.
[in] msgProfileId
ID profil pesan yang diterima.
[in] msgType
Jenis pesan pada pesan yang diterima.
[in] msgInfo
Struktur WeaveMessageInfo yang berisi informasi tentang pesan yang diterima.
[in,out] result
Nilai terenumerasi yang menjelaskan hasil evaluasi kebijakan kontrol akses untuk pesan yang diterima. Setelah masuk ke metode, nilai tersebut mewakili hasil sementara pada tahap saat ini dalam proses evaluasi. Setelah dikembalikan, hasilnya diharapkan mewakili penilaian akhir kebijakan kontrol akses untuk pesan tersebut.

WeaveServerDelegateBase

 WeaveServerDelegateBase(
  void
)