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 bắt đầu một thao tác tắt gói thuê bao một cách nhẹ nhàng và dọn dẹp đối tượng trình xử lý.
|
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:: |
Liên minh |
|
---|---|
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ỷ đăng ký của nhà xuất bản.
Sẽ không có nỗ lực nào để thông báo cho máy khách về việc chấm dứt và ngữ cảnh trao đổi cơ bản nếu có sẽ bị huỷ bỏ ngay lập tức. Sau cuộc gọi này, ứng dụng sẽ không nhận được thông báo về bất kỳ hoạt động nào khác trên đối tượng này. Ngoài ra, sau đó ứng dụng không được phép tương tác với đối tượng này thông qua bất kỳ phương thức nào.
Chấm dứt gói thuê bao của nhà xuất bản mà không thông báo cho khách hàng đăng ký cũng như không gửi sự kiện OnSubscriptionTerminated
tới trình xử lý sự kiện của ứng dụng. Nếu có gói thuê bao chung, thì gói thuê bao bộ đếm của nhà xuất bản quay về ứng dụ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 nào khác đế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 bắt đầu một thao tác tắt gói thuê bao một cách nhẹ nhàng và dọn dẹp đối tượng trình xử lý.
Chấm dứt 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 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 cuộc gọi này, ứng dụng sẽ không nhận được thông báo về bất kỳ hoạt động nào khác trên đối tượng này. Ngoài ra, sau đó ứng dụng không được phép tương tác với đối tượng này thông qua bất kỳ phương thức nào.
Chấm dứt linh hoạt việc kết thúc gói thuê bao của nhà xuất bản. Nếu bạn bật chế độ hỗ trợ huỷ gói thuê bao, thì một thông báo SubscribeCancelRequest sẽ được gửi đến ứng dụng đă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, 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 có gói thuê bao chung, thì gói thuê bao bộ đếm của nhà xuất bản quay về ứng dụng cũng sẽ bị chấm dứt.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Thông số |
|
||||
Giá trị trả về |
|
Trong khi đợi phản hồi cho một SubscriptionCancelRequest, SubscriptionHandler
sẽ chuyển sang trạng thái Canceling
.
Sau khi quy trình chấm dứt bắt đầu, đối tượng SubscriptionHandler
sẽ chuyển sang trạng thái Terminated
và một 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 bạn 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 nào khác đế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 )