nl::Weave::WeaveServerBase

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

Đối tượng cơ sở, phổ biến để triển khai trình phản hồi không được yêu cầu (máy chủ) của hồ sơ Weave, đóng gói việc xác thực các yêu cầu đã xác thực và gửi báo cáo trạng thái, đồng thời cung cấp bộ nhớ thành viên dữ liệu chung cho trạng thái fabric và trình quản lý trao đổi.

Tóm tắt

Tính kế thừa

Các lớp con trực tiếp đã biết:
  nl::Weave::Profiles::DeviceControl::DeviceControlServer
  nl::Weave::Profiles::DeviceDescription::DeviceDescriptionServer
  nl::Weave::Profiles::Echo_Next::WeaveEchoServer
  nl::Weave::Profiles::FabricProvisioning::FabricProvisioningServer
  nl::Weave::Profiles::Heartbeat::WeaveHeartbeatReceiver
  nl::Weave::Profiles::NetworkProvisioning::NetworkProvisioningServer
  nl::Weave::Profiles::ServiceProvisioning::ServiceProvisioningServer
  nl::Weave::Profiles::TokenPairing::TokenPairingServer
  nl::Weave::Profiles::Vendor::Nestlabs::DropcamLegacyPairing::DropcamLegacyPairingServer
  nl::Weave::Profiles::WeaveEchoServer

Các thuộc tính công khai

ExchangeMgr
[CHỈ ĐỌC] Đối tượng người quản lý Exchange
FabricState
[CHỈ ĐỌC] Đối tượng trạng thái Vải

Hàm tĩnh công khai

SendStatusReport(ExchangeContext *ec, uint32_t statusProfileId, uint16_t statusCode, WEAVE_ERROR sysError)
Gửi một báo cáo trạng thái Weave có cờ thông báo mặc định tới đối tượng khởi tạo trên sàn giao dịch được chỉ định, trong đó chứa mã trạng thái trong cấu hình và lỗi hệ thống được chỉ định.
SendStatusReport(ExchangeContext *ec, uint32_t statusProfileId, uint16_t statusCode, WEAVE_ERROR sysError, uint16_t sendFlags)
Gửi báo cáo trạng thái Weave kèm theo cờ thông báo được cung cấp cho bên khởi tạo trên giao dịch được chỉ định, trong đó có mã trạng thái trong hồ sơ được chỉ định và lỗi hệ thống.

Hàm được bảo vệ

EnforceAccessControl(ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, WeaveServerDelegateBase *delegate)
bool
Xác định xem có chấp nhận hoặc loại bỏ thông báo yêu cầu đến máy chủ Weave hay không.
WeaveServerBase(void)

Các thuộc tính công khai

ExchangeMgr

WeaveExchangeManager * ExchangeMgr

[Chỉ có thể đọc] Đối tượng trình quản lý Exchange

FabricState

WeaveFabricState * FabricState

[CHỈ ĐỌC] Đối tượng trạng thái Fabric

Hàm tĩnh công khai

SendStatusReport

WEAVE_ERROR SendStatusReport(
  ExchangeContext *ec,
  uint32_t statusProfileId,
  uint16_t statusCode,
  WEAVE_ERROR sysError
)

Gửi một báo cáo trạng thái Weave có cờ thông báo mặc định tới đối tượng khởi tạo trên sàn giao dịch được chỉ định, trong đó chứa mã trạng thái trong cấu hình và lỗi hệ thống được chỉ định.

Thông tin chi tiết
Thông số
[in] ec
Con trỏ đến ngữ cảnh trao đổi để gửi báo cáo trạng thái.
[in] statusProfileId
Hồ sơ cho mã trạng thái đã chỉ định.
[in] statusCode
Mã trạng thái cần gửi.
[in] sysError
Lỗi hệ thống liên kết hoặc tương quan với mã trạng thái.

SendStatusReport

WEAVE_ERROR SendStatusReport(
  ExchangeContext *ec,
  uint32_t statusProfileId,
  uint16_t statusCode,
  WEAVE_ERROR sysError,
  uint16_t sendFlags
)

Gửi báo cáo trạng thái Weave kèm theo cờ thông báo được cung cấp cho bên khởi tạo trên giao dịch được chỉ định, trong đó có mã trạng thái trong hồ sơ được chỉ định và lỗi hệ thống.

Thông tin chi tiết
Thông số
[in] ec
Con trỏ đến ngữ cảnh trao đổi để gửi báo cáo trạng thái.
[in] statusProfileId
Hồ sơ cho mã trạng thái đã chỉ định.
[in] statusCode
Mã trạng thái cần gửi.
[in] sysError
Lỗi hệ thống liên quan hoặc liên quan đến mã trạng thái.
[in] sendFlags
Cờ do ứng dụng đặt cho báo cáo trạng thái Weave đang được gửi.

Hàm được bảo vệ

EnforceAccessControl

bool EnforceAccessControl(
  ExchangeContext *ec,
  uint32_t msgProfileId,
  uint8_t msgType,
  const WeaveMessageInfo *msgInfo,
  WeaveServerDelegateBase *delegate
)

Xác định xem có chấp nhận hoặc loại bỏ thông báo yêu cầu đến máy chủ Weave hay không.

Phương thức này được dùng để triển khai máy chủ Weave nhằm triển khai chính sách kiểm soát quyền truy cập có thể mở rộng cho các thông báo yêu cầu đến. Các hoạt động triển khai máy chủ dựa vào đối tượng uỷ quyền nên gọi phương thức này sớm trong quá trình xử lý thông báo để xác định xem có tiếp tục xử lý thông báo hay không.

Phương thức này gọi phương thức WeaveServerDelegateBase::EnforceAccessControl() ảo trên đối tượng uỷ quyền được cung cấp để đánh giá chính sách kiểm soát quyền truy cập cho thông báo. Các lớp uỷ quyền máy chủ Weave và các uỷ quyền dành riêng cho ứng dụng bắt nguồn từ các lớp máy chủ chuẩn phải ghi đè phương thức ảo để thực thi các chính sách kiểm soát quyền truy cập cụ thể.

Thông tin chi tiết
Thông số
[in] ec
ExchangeContext mà thông báo được nhận qua đó.
[in] msgProfileId
Mã nhận dạng hồ sơ của thư đã nhận.
[in] msgType
Loại thông báo của thông báo đã nhận được.
[in] msgInfo
Cấu trúc WeaveMessageInfo chứa thông tin về thông báo đã nhận.
[in] delegate
Đối tượng uỷ quyền do ứng dụng cung cấp có thể dùng để ghi đè chính sách kiểm soát quyền truy cập vào thư mặc định.
Giá trị trả về
true
Nếu thông báo được chấp nhận và xử lý như bình thường.
false
Nếu quá trình xử lý thông báo sẽ dừng và thông báo đó sẽ bị loại bỏ.

WeaveServerBase

 WeaveServerBase(
  void
)