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
Chức năng này chấm dứt gói đăng ký ngay lập tức - đây là cuộc gọi đồng bộ.
|
AcceptSubscribeRequest(const uint32_t aLivenessTimeoutSec)
|
|
EndSubscription(const uint32_t aReasonProfileId, const uint16_t aReasonStatusCode)
|
Chức năng này bắt đầu ngừng việc đăng ký và dọn dẹp đối tượng của 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
Lệnh gọi lại sự kiện
void(* EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
Mã sự kiện
EventID
Mã trình xử lý
uint8_t HandlerId
Hàm tĩnh công khai
Trình xử lý sự kiện mặc định
void DefaultEventHandler( EventID aEvent, const InEventParam & aInParam, OutEventParam & aOutParam )
Hàm công khai
Hủy đăng ký
void AbortSubscription( void )
Chức năng này chấm dứt gói đăng ký ngay lập tức - đây là cuộc gọi đồng bộ.
Hủy đăng ký nhà xuất bản.
Hệ thống không cố gắng thông báo cho khách hàng về việc chấm dứt và bối cảnh trao đổi cơ bản nếu việc trình bày bị hủy ngay lập tức. Sau cuộc 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, 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 thời điểm kết thúc gói đăng ký của nhà xuất bản mà không thông báo cho ứng dụng đăng ký và không phân phối sự kiện OnSubscriptionTerminated
cho trình xử lý sự kiện của ứng dụng. Nếu có gói đăng ký tương hỗ, thì đăng ký phản đối từ nhà xuất bản cho khách hàng trở lại cũng sẽ bị chấm dứt.
Khi gọi Destroysubscription(), đối tượng SubscriptionHandler
sẽ chuyển sang trạng thái Terminated
. Nếu không có thêm thông tin tham chiếu đến đối tượng khi quá trình chấm dứt hoàn tất, đối tượng SubscriptionHandler
sẽ được giải phóng.
Chấp nhận yêu cầu đăng ký
WEAVE_ERROR AcceptSubscribeRequest( const uint32_t aLivenessTimeoutSec )
Kết thúc gói thuê bao
WEAVE_ERROR EndSubscription( const uint32_t aReasonProfileId, const uint16_t aReasonStatusCode )
Chức năng này bắt đầu ngừng việc đăng ký và dọn dẹp đối tượng của trình xử lý.
Kết thúc đăng ký của nhà xuất bản một cách nhanh chóng.
Đây là cuộc gọi không đồng bộ và sẽ thông báo cho khách hàng về việc sắp ngừng hoạt động thông qua thông báo Đăng ký/Trạng thái.
Đáng chú ý là việc này sẽ từ bỏ việc các ứng dụng tham gia vào gói thuê bao này. Sau cuộc 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, 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 kết thúc đăng ký của nhà xuất bản một cách nhanh chóng. Nếu tính năng hỗ trợ hủy đăng ký được bật, thì thông báo Đăng ký hủy sẽ được gửi cho ứng dụng đăng ký và hệ thống đang chờ trả lời trước khi chấm dứt đăng ký. Nếu không, đăng ký sẽ bị chấm dứt ngay lập tức theo cách tương tự như Hủy đăng ký(). Nếu có đăng ký tương hỗ, đăng ký của nhà xuất bản cho khách hàng trở lại cũng bị chấm dứt.
Thông tin chi tiết | |||||
---|---|---|---|---|---|
Các thông số |
|
||||
Giá trị trả về |
|
Trong khi chờ phản hồi cho các yêu cầu Hủy đăng ký, 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à một sự kiện OnSubscriptionTerminated
sẽ được gửi đến trình xử lý sự kiện của ứng dụng. Xin lưu ý rằng nếu không bật tính năng hỗ trợ, 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ó thêm thông tin tham chiếu nào đến đối tượng SubscriptionHandler
, thì đối tượng này sẽ được giải phóng.
Liên kết
Binding * GetBinding( void ) const
GetMaxNotificationsSize
uint32_t GetMaxNotificationSize( void ) const
GetPeerNodeId
uint64_t GetPeerNodeId( void ) const
Nhận đăng ký
WEAVE_ERROR GetSubscriptionId( uint64_t *const apSubscriptionId )
IsActive
bool IsActive( void )
Đang hủy
bool IsCanceling() const
Không hoạt động
bool IsEstablishedIdle()
Miễn phí
bool IsFree()
Chấm dứt
bool IsTerminated()
SetMaxNotificationsSize
void SetMaxNotificationSize( const uint32_t aMaxPayload )