nl :: Dệt :: Hồ sơ :: DataManagement_Legacy :: DMClient
#include <src/lib/profiles/data-management/Legacy/DMClient.h>
Lớp cơ sở trừu tượng dành cho các máy khách WDM dành riêng cho ứng dụng.
Tóm lược
DMClient là khách hàng WDM tiêu chuẩn. Việc triển khai tùy chọn bao gồm đăng ký / thông báo. Đó là một sự pha trộn của DM ProtocolEngine lớp, trong đó xử lý các vệ tinh viễn thông quây xoay, và hoàn toàn trừu tượng ClientDataManager lớp, với một số phương pháp thuê bao liên quan đến thực hiện sao cho lớp cao hơn không cần phải lo lắng về chúng.
Việc xử lý đối với nhiệm vụ thuê bao liên quan đến chủ yếu đóng vai trò như một bộ chuyển đổi mỏng so với ClientNotifier đối tượng. Những người triển khai lớp con nên cẩn thận để gọi các phương thức siêu lớp có liên quan để biến trình quản lý đăng ký quay trở lại.
DMClient phương pháp yêu cầu thường có 2 chữ ký, một với một ID node đích rõ ràng và khác với một điểm đến cụ thể. Trong cả hai trường hợp, khả năng gửi tin nhắn đến nhà xuất bản phụ thuộc vào ràng buộc có sẵn trong ứng dụng khách, nhưng trong trường hợp đầu tiên, ID đích được dự định để chọn giữa nhiều đích được ràng buộc và trong trường hợp thứ hai, mục trong bảng ràng buộc được chọn làm mặc định. Điều này rất hữu ích, chẳng hạn, nếu khách hàng chỉ bị ràng buộc với một nhà xuất bản duy nhất.
Di sản
Kế thừa từ:nl :: Weave :: Profiles :: DataManagement_Legacy :: ProtocolEngine
nl :: Weave :: Profiles :: DataManagement_Legacy :: ClientDataManager
Người xây dựng và Người phá hủy | |
---|---|
DMClient (void) Các constructor mặc định cho DMClient đối tượng. | |
~DMClient (void) Destructor cho DMClient đối tượng. |
ViewRequest (const uint64_t & aDestinationId, ReferencedTLVData & aPathList, uint16_t aTxnId, uint32_t aTimeout) | virtual WEAVE_ERROR Yêu cầu xem dữ liệu đã xuất bản. |
ViewRequest ( ReferencedTLVData & aPathList, uint16_t aTxnId, uint32_t aTimeout) | virtual WEAVE_ERROR Yêu cầu chế độ xem dữ liệu trên nhà xuất bản mặc định. |
UpdateRequest (const uint64_t & aDestinationId, ReferencedTLVData & aDataList, uint16_t aTxnId, uint32_t aTimeout) | virtual WEAVE_ERROR Yêu cầu cập nhật dữ liệu đã xuất bản. |
UpdateRequest ( ReferencedTLVData & aDataList, uint16_t aTxnId, uint32_t aTimeout) | virtual WEAVE_ERROR Yêu cầu cập nhật dữ liệu trên nhà xuất bản mặc định. |
Thuộc tính được bảo vệ | |
---|---|
mUpdatePool [kUpdatePoolSize] | |
mViewPool [kViewPoolSize] |
Chức năng công cộng | |
---|---|
CancelTransactionRequest (uint16_t aTxnId, WEAVE_ERROR aError) | Yêu cầu hủy một giao dịch đang thực hiện. |
Clear (void) | virtual void Xóa trạng thái nội bộ liên kết với một DMClient đối tượng. |
Finalize (void) | virtual void Shut down một hành DMClient . |
IncompleteIndication ( Binding *aBinding, StatusReport & aReport) | virtual void Xử lý "sự không hoàn thành" của một ràng buộc đang được khách hàng sử dụng. |
Các chức năng được bảo vệ | |
---|---|
NewUpdate (void) | Update * |
NewView (void) | View * |
ViewRequest
virtual WEAVE_ERROR ViewRequest( const uint64_t & aDestinationId, ReferencedTLVData & aPathList, uint16_t aTxnId, uint32_t aTimeout )
Yêu cầu xem dữ liệu đã xuất bản.
Yêu cầu chế độ xem dữ liệu do một nhà xuất bản từ xa đã chỉ định dựa trên và quản lý.
Chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Thông số |
| ||||||||
Giá trị trả lại |
| ||||||||
Lợi nhuận | Nếu không, một WEAVE_ERROR phản ánh sự thất bại để khởi tạo hoặc bắt đầu giao dịch. |
ViewRequest
virtual WEAVE_ERROR ViewRequest( ReferencedTLVData & aPathList, uint16_t aTxnId, uint32_t aTimeout )
Yêu cầu xem dữ liệu trên nhà xuất bản mặc định.
Yêu cầu chế độ xem dữ liệu do nhà xuất bản "mặc định" quản lý, tức là nhà xuất bản đầu tiên (hoặc duy nhất) trong bảng ràng buộc của khách hàng.
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Thông số |
| ||||||
Giá trị trả lại |
| ||||||
Lợi nhuận | Nếu không, một WEAVE_ERROR phản ánh sự thất bại để khởi tạo hoặc bắt đầu giao dịch. |
UpdateRequest
virtual WEAVE_ERROR UpdateRequest( const uint64_t & aDestinationId, ReferencedTLVData & aDataList, uint16_t aTxnId, uint32_t aTimeout )
Yêu cầu cập nhật dữ liệu đã xuất bản.
Yêu cầu nhà xuất bản từ xa cập nhật dữ liệu được quản lý.
Chi tiết | |||||||||
---|---|---|---|---|---|---|---|---|---|
Thông số |
| ||||||||
Lợi nhuận | WEAVE_NO_ERROR về thành công hay WEAVE_ERROR_NO_MEMORY nếu một giao dịch cập nhật không thể được phân bổ. Nếu không, trả về một WEAVE_ERROR phản ánh một sự thất bại cập nhật. |
UpdateRequest
virtual WEAVE_ERROR UpdateRequest( ReferencedTLVData & aDataList, uint16_t aTxnId, uint32_t aTimeout )
Yêu cầu cập nhật dữ liệu trên nhà xuất bản mặc định.
Yêu cầu nhà xuất bản từ xa cập nhật dữ liệu được quản lý. Phiên bản này hướng yêu cầu đến nhà xuất bản là mục tiêu của ràng buộc mặc định của khách hàng.
Chi tiết | |||||||
---|---|---|---|---|---|---|---|
Thông số |
| ||||||
Lợi nhuận | WEAVE_NO_ERROR về thành công hay WEAVE_ERROR_NO_MEMORY nếu một giao dịch cập nhật không thể được phân bổ. Nếu không, trả về một WEAVE_ERROR phản ánh một sự thất bại cập nhật. |
Thuộc tính được bảo vệ
mUpdatePool
Update mUpdatePool[kUpdatePoolSize]
mViewPool
View mViewPool[kViewPoolSize]
Chức năng công cộng
CancelTransactionRequest
WEAVE_ERROR CancelTransactionRequest( uint16_t aTxnId, WEAVE_ERROR aError )
Yêu cầu hủy một giao dịch đang thực hiện.
Phương pháp này không tạo ra lưu lượng truy cập mạng mà chỉ giải phóng tài nguyên được phân bổ cho (các) giao dịch được chỉ định
Chi tiết | |||||
---|---|---|---|---|---|
Thông số |
| ||||
Lợi nhuận | WEAVE_NO_ERROR về thành công hay một WEAVE_ERROR phản ánh một sự thất bại để hủy bỏ giao dịch. |
Thông thoáng
virtual void Clear( void )
Xóa trạng thái nội bộ liên kết với một DMClient đối tượng.
Đặc biệt, phương pháp này xóa tất cả các nhóm giao dịch của khách hàng. Đối với khách hàng đã được sử dụng các Finalize () phương pháp được ưa chuộng hơn vì nó cũng hủy bỏ đăng ký và dọn dẹp các giao dịch và bảng tính ràng buộc.
Xem thêm:Kết thúc ()
DMClient
DMClient( void )
Hoàn thiện
virtual void Finalize( void )
Shut down một hành DMClient .
Xóa tất cả trạng thái hoạt động được liên kết với ứng dụng khách và xóa tất cả các đăng ký liên quan khỏi trình thông báo. Sau một cuộc gọi đến Finalize () một DMClient thể được reinitialized chỉ đơn giản bằng cách gọi Init (). Finalize () được gọi bởi DMClient destructor nhưng có thể được gọi trong trường hợp một DMClient đòi dọn dẹp, ví dụ như trong trường hợp thất bại hay tắt máy tạm thời, nhưng có thể cần phải được hoàn nguyên tại một thời gian sau đó.
IncompleteIndication
virtual void IncompleteIndication( Binding *aBinding, StatusReport & aReport )
Xử lý "sự không hoàn thành" của một ràng buộc đang được khách hàng sử dụng.
Khi một liên kết bị lỗi bất ngờ, ví dụ: nếu kết nối liên quan đến liên kết bị đóng, thì phương thức này được gọi.
Chi tiết | |||||
---|---|---|---|---|---|
Thông số |
|
~ DMClient
virtual ~DMClient( void )
Destructor cho DMClient đối tượng.
Xóa tất cả trạng thái nội bộ và nếu cần thiết sẽ hủy các đăng ký đang chờ xử lý.
Các chức năng được bảo vệ
Cập nhật mới
Update * NewUpdate( void )
Xem mới
View * NewView( void )