nl::Weave::WeaveServerDelegateBase

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

فئة أساسية شائعة لتنفيذ كائنات تفويض خادم Weave.

الملخّص

الاكتساب

العناصر المباشرة المعروفة:
nl::Weave::Profiles::DeviceControl::DeviceControlProvider:
nl::Weave: المنتجات: الصلاة::::مساحة التشغيل:: الوسائط:مساحة الاتصال:ّلا الميزات:التطبيق: المشغّل:
::مساحة العرض:مساحة العرض: المتوفرة: لذلك: عند الاتصال:التطبيق: واحد:
وأنّ:
لا يحتاج الرابط: لا تنطبق على Google المعلنين: واحد: يحتاج: فضلاً:1: وأنّ وردّ واحد وأن إرسال البرنامج: وأنسب الأوقات: بسيطة: وأن مطوّل البرنامج: وأنسب: وأن فرض وأن تكون مترابطة، أولاً: ظهر: وأن التالية وأن تكون تنزيل أولاً

الأنواع المحمية

@69{
  kAccessControlResult_NotDetermined = 0,
  kAccessControlResult_Accepted = 1,
  kAccessControlResult_Rejected = 2,
  kAccessControlResult_Rejected_RespSent = 3,
  kAccessControlResult_Rejected_Silent = 4
}
تعداد
AccessControlResult typedef
uint8_t

دوال محمية

EnforceAccessControl(ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, AccessControlResult & result)
virtual void
طريقة افتراضية لتحديد سياسة التحكم في الوصول على مستوى الرسالة لرسائل طلبات الخادم الواردة.
WeaveServerDelegateBase(void)

الأنواع المحمية

@69

 @69

نتيجة AccessControl

uint8_t AccessControlResult

دوال محمية

فرض التحكم في الدخول

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

طريقة افتراضية لتحديد سياسة التحكم في الوصول على مستوى الرسالة لرسائل طلبات الخادم الواردة.

تعتمد هذه الطريقة على البنية الأساسية لخادم Weave لتحديد ما إذا كان يجب قبول رسالة الطلب الواردة ومعالجتها بشكل طبيعي أو رفضها. يجب أن تفوِّض فئات التفويض المرتبطة بعمليات تنفيذ خادم Weave هذه الطريقة لتنفيذ سياسات مناسبة للتحكم في الوصول إلى بروتوكولاتها. قد تلغي التطبيقات هذه الطريقة لدعم السياسات المخصصة بخلاف السياسات التي تقدمها عمليات تنفيذ الخوادم القياسية.

ومن المتوقع أن تعرض عمليات تنفيذ هذه الطريقة قيمة نتيجة "مقبولة" أو "مرفوضة" استنادًا إلى نتيجة تقييم سياسة التحكم في الوصول. يؤدي عرض نتيجة الرفض إلى إرسال تقرير حالة إلى مقدِّم الطلب الذي يحتوي على الحالة Common/AccessDenied. بدلاً من ذلك، يمكن لعمليات اختيار الطريقة اختيار إرسال ردودها، والتي يمكن أن تكون في تقرير الحالة أو أي نوع آخر من الرسائل. في هذه الحالة، يجب أن تعرض الطريقة نتيجة Rejected_RespSent للإشارة إلى أنه قد تم إرسال استجابة. وأخيرًا، يمكن لعمليات التنفيذ عرض Rejected_Silent للإشارة إلى أنّه يجب رفض الطلب بدون إرسال ردّ إلى مقدّم الطلب.

تُعد الفئات التي تلغي طريقة EnforceAccessControl() مطلوبة في حالات الاستدعاء لاستدعاء الطريقة المشابهة في الفئة الرئيسية المباشرة التابعة لها، سواء كانت فئة WeaveServerDelegateBase، أو فئة مشتقة من تلك الفئة. يجب أولاً تعديل طرق الإلغاء لقيمة النتيجة من خلال تحديد سياسة التحكم في الوصول، ثم طلب الفئة الأساسية لتحديد ذلك.

التفاصيل
المعلَمات
[in] ec
ExchangeContext الذي تم استلام الرسالة منه.
[in] msgProfileId
معرّف الملف الشخصي للرسالة المستلمة.
[in] msgType
نوع الرسالة التي تم استلامها.
[in] msgInfo
بنية WeaveMessageInfo تحتوي على معلومات حول الرسالة المستلمة.
[in,out] result
قيمة تعداد تصف نتيجة تقييم سياسة التحكم في الوصول للرسالة المستلمة. عند الدخول إلى الطريقة، تمثل القيمة النتيجة المبدئية في النقطة الحالية في عملية التقييم. وعند العودة، من المتوقع أن تمثل النتيجة التقييم النهائي لسياسة التحكم في الوصول للرسالة.

WeaveServerDelegateBase

 WeaveServerDelegateBase(
  void
)