nl:: Weave:: WeaveServerDelegateBase
#include <src/lib/core/WeaveServerBase.h>
Weave सर्वर डेलिगेट ऑब्जेक्ट को लागू करने के लिए एक सामान्य बेस क्लास.
खास जानकारी
इनहेरिटेंस
पहले से मालूम सब-क्लास: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
सुरक्षित किए गए टाइप |
|
---|---|
@69{
|
enum |
AccessControlResult
|
typedefuint8_t
|
सुरक्षित फ़ंक्शन |
|
---|---|
EnforceAccessControl(ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, AccessControlResult & result)
|
virtual void
इनकमिंग सर्वर अनुरोध मैसेज के लिए मैसेज-लेवल ऐक्सेस कंट्रोल की नीति तय करने का वर्चुअल तरीका.
|
WeaveServerDelegateBase(void)
|
|
सुरक्षित किए गए टाइप
@69
@69
AccessControlResult
uint8_t AccessControlResult
सुरक्षित फ़ंक्शन
EnforceAccessControl
virtual void EnforceAccessControl( ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, AccessControlResult & result )
इनकमिंग सर्वर अनुरोध मैसेज के लिए मैसेज-लेवल ऐक्सेस कंट्रोल की नीति तय करने का वर्चुअल तरीका.
इस तरीके को Weave सर्वर इन्फ़्रास्ट्रक्चर के ज़रिए यह तय करने के लिए कॉल किया जाता है कि आने वाले अनुरोध को स्वीकार और प्रोसेस किया जाना चाहिए या फिर उसे अस्वीकार किया जाना चाहिए. Weave सर्वर को लागू करने से जुड़े डेलिगेट क्लास को इस तरीके को बदलना होगा, ताकि अपने प्रोटोकॉल के लिए ऐक्सेस कंट्रोल की सही नीतियां लागू की जा सकें. कस्टम नीतियों का समर्थन करने के लिए मानक सर्वर कार्यान्वयन द्वारा उपलब्ध कराई जाने वाली नीतियों के अलावा, एप्लिकेशन इस विधि को भी ओवरराइड कर सकते हैं.
इस तरीके को लागू करने पर, ऐक्सेस कंट्रोल की नीति की जांच के नतीजे के आधार पर, नतीजे की वैल्यू 'स्वीकार किया गया' या 'अस्वीकार किया गया' के तौर पर दिख सकती है. 'अस्वीकार किया गया' का नतीजा मिलने पर, अनुरोध करने वाले व्यक्ति को एक स्टेटस रिपोर्ट भेजी जाती है. इस रिपोर्ट में 'सामान्य/ऐक्सेस-अस्वीकार किया गया' स्थिति होती है. इसके अलावा, लागू करने का तरीका खुद ही अपना जवाब भेज सकता है. यह एक Statusरिपोर्ट या किसी अन्य तरह का मैसेज हो सकता है. इस मामले में, इस तरीके को यह बताने के लिए वेज को अस्वीकार_RespSent का नतीजा देना चाहिए कि जवाब पहले ही भेजा जा चुका है. आखिर में, लागू करने की प्रोसेस के तहत, अनुरोध करने वाले को जवाब भेजे बिना, अनुरोध को अस्वीकार करने का अनुरोध किया जा सकता है. इसके लिए, डेस्क_Silent की मदद से अनुरोध को अस्वीकार किया जाना चाहिए.
अपनी तुरंत पैरंट क्लास पर एक जैसे नाम वाले तरीके को कॉल करने के लिए, EnforceAccessControl() तरीके को बदलने वाली क्लास का इस्तेमाल करना ज़रूरी है. ऐसा तब होता है, जब वह WeaveServerDelegateBase क्लास या उस क्लास से मिली क्लास हो. ओवरराइड करने के तरीकों में सबसे पहले, नतीजे की वैल्यू को अपडेट करना चाहिए. इसके लिए, उन्हें ऐक्सेस कंट्रोल की नीति तय करनी चाहिए. इसके बाद, उन्हें तय करने के लिए बेस क्लास से संपर्क करना चाहिए.
विवरण | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
WeaveServerDelegateBase
WeaveServerDelegateBase( void )