nl:: Weave:: Profiles:: DataManagement_Current:: SubscriptionHandler
Özet
Herkese açık türler |
|
---|---|
@142
|
enum |
EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
|
typedefvoid(*
|
EventID
|
enum |
HandlerId
|
typedefuint8_t
|
Herkese açık statik işlevler |
|
---|---|
DefaultEventHandler(EventID aEvent, const InEventParam & aInParam, OutEventParam & aOutParam)
|
void
|
Herkese açık işlevler |
|
---|---|
AbortSubscription(void)
|
void
Eşzamanlı bir çağrı olan bu işlev, aboneliği hemen sonlandırır.
|
AcceptSubscribeRequest(const uint32_t aLivenessTimeoutSec)
|
|
EndSubscription(const uint32_t aReasonProfileId, const uint16_t aReasonStatusCode)
|
Bu işlev, aboneliği düzgün bir şekilde kapatma işlemini ve işleyici nesnesini temizleme işlemini başlatır.
|
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
|
Yapılar |
|
---|---|
nl:: |
Birlikler |
|
---|---|
nl:: |
|
nl:: |
Herkese açık türler
@142
@142
EventCallback
void(* EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
EventID
EventID
HandlerId
uint8_t HandlerId
Herkese açık statik işlevler
DefaultEventHandler
void DefaultEventHandler( EventID aEvent, const InEventParam & aInParam, OutEventParam & aOutParam )
Herkese açık işlevler
AbortSubscription
void AbortSubscription( void )
Eşzamanlı bir çağrı olan bu işlev, aboneliği hemen sonlandırır.
Yayıncı aboneliğini iptal etme
Müşteriyi fesih hakkında bilgilendirmek için herhangi bir girişimde bulunulmaz ve varsa temel exchange bağlamı hemen iptal edilir. Bu çağrıdan sonra, uygulamaya bu nesneyle ilgili başka bir etkinlik bildirilmez. Ayrıca, uygulamanın daha sonra yöntemlerinden birini kullanarak bu nesneyle etkileşim kurmasına da izin verilmez.
Abonelik istemcisini bilgilendirmeden ve uygulamanın etkinlik işleyicisine bir OnSubscriptionTerminated
etkinliği iletmeden aboneliğin yayıncı sonunu sonlandırır. Karşılıklı abonelik varsa yayıncıdan müşteriye geri karşı abonelik de sonlandırılır.
AbortSubscription() çağrıldıktan sonra, SubscriptionHandler
nesnesi Terminated
durumuna girer. Sonlandırma işlemi tamamlandığında nesneye başka referanslar gönderilmezse SubscriptionHandler
nesnesi serbest bırakılır.
AcceptSubscribeRequest
WEAVE_ERROR AcceptSubscribeRequest( const uint32_t aLivenessTimeoutSec )
EndSubscription
WEAVE_ERROR EndSubscription( const uint32_t aReasonProfileId, const uint16_t aReasonStatusCode )
Bu işlev, aboneliği düzgün bir şekilde kapatma işlemini ve işleyici nesnesini temizleme işlemini başlatır.
Yayıncı aboneliğini sorunsuz bir şekilde sonlandırın.
Bu, eşzamansız bir çağrıdır ve ilgili olduğunda bir SubscriptionsCancel/Statusreport mesajı aracılığıyla istemciyi yaklaşan kapatma işlemi hakkında bilgilendirir.
Bu sayede, uygulamanın söz konusu aboneliğe dahil olması cazibesini ortadan kaldırıyor. Bu çağrıdan sonra, uygulamaya bu nesneyle ilgili başka bir etkinlik bildirilmez. Ayrıca, uygulamanın daha sonra yöntemlerinden birini kullanarak bu nesneyle etkileşim kurmasına da izin verilmez.
Aboneliğin yayıncı sonunu düzgün bir şekilde fesheder. Abonelik iptali desteği etkinleştirilirse abonelik istemcisine bir SubscriptionCancelRequest mesajı gönderilir ve sistem, aboneliği sonlandırmadan önce yanıt bekler; Aksi takdirde abonelik, AbortSubscription() yöntemine benzer bir şekilde hemen sonlandırılır. Karşılıklı abonelik varsa yayıncıdan müşteriye geri karşı abonelik de sonlandırılır.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
Değerleri Döndür |
|
Abonelik İptal İsteği için yanıt beklerken SubscriptionHandler
, Canceling
durumuna girer.
Sonlandırma işlemi başladıktan sonra, SubscriptionHandler
nesnesi Terminated
durumuna girer ve uygulamanın etkinlik işleyicisine bir OnSubscriptionTerminated
etkinliği teslim edilir. İptal desteği etkinleştirilmemişse etkinlik işleyicinin, EndSubscription() çağrısında eşzamanlı olarak çağrılabileceğini unutmayın.
Uygulamanın etkinlik işleyicisi geri döndüğünde, SubscriptionHandler
nesnesine ek referanslar yoksa nesne serbest bırakılır.
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 )