nl:: Weave:: Profiles:: DataManagement_Current:: SubscriptionHandler
Tóm tắt
Loại công khai |
|
---|---|
@142
|
enum |
EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
|
typedefvoid(*
|
EventID
|
enum |
HandlerId
|
typedefuint8_t
|
Hàm tĩnh công khai |
|
---|---|
DefaultEventHandler(EventID aEvent, const InEventParam & aInParam, OutEventParam & aOutParam)
|
void
|
Hàm công khai |
|
---|---|
AbortSubscription(void)
|
void
Hàm này chấm dứt gói thuê bao ngay lập tức – đây là lệnh gọi đồng bộ.
|
AcceptSubscribeRequest(const uint32_t aLivenessTimeoutSec)
|
|
EndSubscription(const uint32_t aReasonProfileId, const uint16_t aReasonStatusCode)
|
Hàm này sẽ bắt đầu tắt gói thuê bao và dọn dẹp đối tượng trình xử lý theo cách linh hoạt.
|
GetBinding(void) const
|
Binding *
|
GetMaxNotificationSize(void) const
|
uint32_t
|
GetPeerNodeId(void) const
|
uint64_t
|
GetSubscriptionId(uint64_t *const apSubscriptionId)
|
|
IsActive(void)
|
bool
|
IsCanceling() const
|
bool
|
IsEstablishedIdle()
|
bool
|
IsFree()
|
bool
|
IsTerminated()
|
bool
|
SetMaxNotificationSize(const uint32_t aMaxPayload)
|
void
|
Cấu trúc |
|
---|---|
nl:: |
Hiệp hội |
|
---|---|
nl:: |
|
nl:: |
Loại công khai
@142
@142
EventCallback
void(* EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
EventID
EventID
HandlerId
uint8_t HandlerId
Hàm tĩnh công khai
DefaultEventHandler
void DefaultEventHandler( EventID aEvent, const InEventParam & aInParam, OutEventParam & aOutParam )
Hàm công khai
AbortSubscription
void AbortSubscription( void )
Hàm này chấm dứt gói thuê bao ngay lập tức – đây là lệnh gọi đồng bộ.
Huỷ gói thuê bao của nhà xuất bản.
Không có nỗ lực nào để thông báo cho khách hàng về việc chấm dứt này và ngữ cảnh trao đổi cơ bản (nếu có) sẽ bị huỷ ngay lập tức. Sau lệnh gọi này, ứng dụng sẽ không được thông báo về bất kỳ hoạt động nào khác liên quan đến đối tượng này. Ngoài ra, ứng dụng không được phép tương tác với đối tượng này sau đó thông qua bất kỳ phương thức nào.
Chấm dứt việc nhà xuất bản kết thúc gói thuê bao mà không thông báo cho khách hàng mua gói thuê bao và không gửi sự kiện OnSubscriptionTerminated
cho trình xử lý sự kiện của ứng dụng. Nếu tồn tại gói thuê bao chung, thì gói thuê bao bộ đếm từ nhà xuất bản trả về cho khách hàng cũng sẽ bị chấm dứt.
Khi gọi AbortSubscription(), đối tượng SubscriptionHandler
sẽ chuyển sang trạng thái Terminated
. Nếu không có tham chiếu bổ sung nào đến đối tượng khi quá trình chấm dứt hoàn tất, thì đối tượng SubscriptionHandler
sẽ được giải phóng.
AcceptSubscribeRequest
WEAVE_ERROR AcceptSubscribeRequest( const uint32_t aLivenessTimeoutSec )
EndSubscription
WEAVE_ERROR EndSubscription( const uint32_t aReasonProfileId, const uint16_t aReasonStatusCode )
Hàm này sẽ bắt đầu tắt gói thuê bao và dọn dẹp đối tượng trình xử lý theo cách linh hoạt.
Kết thúc linh hoạt gói thuê bao của nhà xuất bản.
Đây là cuộc gọi không đồng bộ và sẽ thông báo cho ứng dụng khách về việc sắp ngừng hoạt động thông qua thông báo SubscribeCancel/StatusReport (Đăng ký theo dõi) nếu có liên quan.
Đáng chú ý là việc này sẽ từ bỏ quyền tham gia của ứng dụng vào gói thuê bao này. Sau lệnh gọi này, ứng dụng sẽ không được thông báo về bất kỳ hoạt động nào khác liên quan đến đối tượng này. Ngoài ra, ứng dụng không được phép tương tác với đối tượng này sau đó thông qua bất kỳ phương thức nào.
Chấm dứt linh hoạt việc nhà xuất bản kết thúc gói thuê bao. Nếu bật chế độ hỗ trợ huỷ gói thuê bao, thì một thông báo SubscriptionCancelRequest sẽ được gửi đến ứng dụng khách đăng ký và hệ thống sẽ chờ phản hồi trước khi chấm dứt gói thuê bao; nếu không thì gói thuê bao sẽ bị chấm dứt ngay lập tức theo cách tương tự như AbortSubscription(). Nếu tồn tại một gói thuê bao chung, việc đăng ký bộ đếm từ nhà xuất bản cho ứng dụng khách cũng sẽ bị chấm dứt.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các tham số |
|
||||
Giá trị trả về |
|
Trong khi chờ phản hồi một SubscriptionCancelRequest, SubscriptionHandler
sẽ chuyển sang trạng thái Canceling
.
Sau khi quá trình chấm dứt bắt đầu, đối tượng SubscriptionHandler
sẽ chuyển sang trạng thái Terminated
và sự kiện OnSubscriptionTerminated
được gửi đến trình xử lý sự kiện của ứng dụng. Lưu ý rằng nếu không bật tính năng hỗ trợ huỷ, thì trình xử lý sự kiện có thể được gọi đồng bộ trong lệnh gọi đến EndSubscription().
Sau khi trình xử lý sự kiện của ứng dụng trả về, nếu không có tham chiếu bổ sung nào đến đối tượng SubscriptionHandler
thì đối tượng sẽ được giải phóng.
GetBinding
Binding * GetBinding( void ) const
GetMaxNotificationSize
uint32_t GetMaxNotificationSize( void ) const
GetPeerNodeId
uint64_t GetPeerNodeId( void ) const
GetSubscriptionId
WEAVE_ERROR GetSubscriptionId( uint64_t *const apSubscriptionId )
IsActive
bool IsActive( void )
IsCanceling
bool IsCanceling() const
IsEstablishedIdle
bool IsEstablishedIdle()
IsFree
bool IsFree()
IsTerminated
bool IsTerminated()
SetMaxNotificationSize
void SetMaxNotificationSize( const uint32_t aMaxPayload )