nl:: Weave:: WeaveServerDelegateBase
#include <src/lib/core/WeaveServerBase.h>
Weave 서버 대리자 객체를 구현하기 위한 공통 기본 클래스입니다.
요약
상속
직접 알려진 서브클래스: <ph type="x-smartling-placeholder"></ph> nl::Weave::Profiles::DeviceControl::DeviceControlDelegate <ph type="x-smartling-placeholder">
</ph> nl::Weave::Profiles::FabricProvisioning::FabricProvisioningDelegate <ph type="x-smartling-placeholder">
</ph> nl::Weave::Profiles::NetworkProvisioning::NetworkProvisioningDelegate <ph type="x-smartling-placeholder">
</ph> nl::Weave::Profiles::ServiceProvisioning::ServiceProvisioningDelegate <ph type="x-smartling-placeholder">
</ph> nl::Weave::Profiles::TokenPairing::TokenPairingDelegate <ph type="x-smartling-placeholder">
</ph> 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 서버 구현과 관련된 위임 클래스는 이 메서드를 재정의하여 해당 프로토콜에 대한 적절한 액세스 제어 정책을 구현해야 합니다. 애플리케이션은 표준 서버 구현에서 제공하는 정책 이외의 맞춤 정책을 지원하도록 이 메서드를 재정의할 수 있습니다.
이 메서드를 구현하면 액세스 제어 정책 평가의 결과에 따라 허용됨 또는 거부됨의 결과 값이 반환됩니다. '거부됨' 결과를 반환하면 요청자에게 Common/AccessDenied 상태가 포함된 StatusReport가 전송됩니다. 또는 메서드 구현이 자체 응답(StatusReport 또는 다른 유형의 메시지)을 보내도록 선택할 수 있습니다. 이 경우 메서드는 Reject_RespSent 결과를 반환하여 응답이 이미 전송되었음을 알려야 합니다. 마지막으로 구현에서는 Reject_Silent를 반환하여 요청자에게 응답을 보내지 않고 요청을 거부해야 함을 나타낼 수 있습니다.
EnforceAccessControl() 메서드를 재정의하는 클래스는 직접 상위 클래스에서 이름이 유사한 메서드를 호출하려면 호출 사례에서 WeaveServerDelegateBase 클래스 또는 해당 클래스에서 파생된 클래스여야 합니다. 메서드를 재정의하려면 먼저 액세스 제어 정책 결정으로 결과 값을 업데이트한 다음 기본 클래스를 호출하여 판단해야 합니다.
세부정보 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
매개변수 |
|
WeaveServerDelegateBase
WeaveServerDelegateBase( void )