nl:: Weave:: Profiller: DataManagement_Current:: SubscriptionsHandler
Özet
Herkese açık türler |
|
---|---|
@142
|
enum |
EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
|
Türvoid(*
|
EventID
|
enum |
HandlerId
|
Türuint8_t
|
Herkese açık statik işlevler |
|
---|---|
DefaultEventHandler(EventID aEvent, const InEventParam & aInParam, OutEventParam & aOutParam)
|
void
|
Herkese açık işlevler |
|
---|---|
AbortSubscription(void)
|
void
Bu işlev, bir aboneliği derhal sonlandırır. Bu, eşzamanlı bir çağrıdır.
|
AcceptSubscribeRequest(const uint32_t aLivenessTimeoutSec)
|
|
EndSubscription(const uint32_t aReasonProfileId, const uint16_t aReasonStatusCode)
|
Bu işlev, aboneliğin sorunsuz bir şekilde kapatılmasını ve işleyici nesnesinin temizlenmesini 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
|
Struct |
|
---|---|
nl:: |
Birlikler |
|
---|---|
nl:: |
|
nl:: |
Herkese açık türler
@142
@142
Etkinlik Geri Çağırması
void(* EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
Etkinlik Kimliği
EventID
İşleyici Kimliği
uint8_t HandlerId
Herkese açık statik işlevler
VarsayılanEtkinlikHandler
void DefaultEventHandler( EventID aEvent, const InEventParam & aInParam, OutEventParam & aOutParam )
Herkese açık işlevler
İptal Et
void AbortSubscription( void )
Bu işlev, bir aboneliği derhal sonlandırır. Bu, eşzamanlı bir çağrıdır.
Yayıncı aboneliğini iptal edin.
Müşteriye fesih hakkında bilgi vermek için bir girişimde bulunmaz ve böyle bir durumda var olan temel exchange bağlamı hemen iptal edilir. Bu çağrıdan sonra uygulamaya, bu nesnede başka etkinlik bildirilmez. Ayrıca, uygulamanın daha sonra yöntemlerinden herhangi biriyle bu nesneyle etkileşimde bulunmasına izin verilmez.
Abonelik istemcisini bilgilendirmeden ve uygulamanın etkinlik işleyicisine OnSubscriptionTerminated
etkinliği iletmeden bir aboneliğin yayıncı sonunu sonlandırır. Ortak bir abonelik varsa yayıncıdan müşteriye gönderilen karşı abonelik de sonlandırılır.
Abortsubscription() çağrısı yapıldığında SubscriptionHandler
nesnesi Terminated
durumuna girer. Fesih işlemi tamamlandığında nesneyle ilgili başka referans yoksa SubscriptionHandler
nesnesi serbest bırakılır.
Kabul İsteğinde Bulun
WEAVE_ERROR AcceptSubscribeRequest( const uint32_t aLivenessTimeoutSec )
Son Abonelik
WEAVE_ERROR EndSubscription( const uint32_t aReasonProfileId, const uint16_t aReasonStatusCode )
Bu işlev, aboneliğin sorunsuz bir şekilde kapatılmasını ve işleyici nesnesinin temizlenmesini başlatır.
Yayıncı aboneliğini ayrıntılı bir şekilde sonlandırın.
Bu, eşzamansız bir aramadır ve ilgili durumlarda Abonenin İptali/Durum Raporu mesajı aracılığıyla yaklaşan kapanma hakkında bilgilendirilir.
Bu yaklaşım, özellikle de uygulamanın bu aboneliğe dahil olmasını engellemektedir. Bu çağrıdan sonra uygulamaya, bu nesnede başka etkinlik bildirilmez. Ayrıca, uygulamanın daha sonra yöntemlerinden herhangi biriyle bu nesneyle etkileşimde bulunmasına izin verilmez.
Aboneliğin yayıncı tarafından sonlandırılmasını zarif bir şekilde sonlandırır. Abonelik iptali desteği etkinleştirilirse abonelik istemcisine bir {5/}CancelRequest mesajı gönderilir ve sistem, aboneliği sonlandırmadan önce bir yanıt bekler. Aksi takdirde, abonelik Abortsubscription() ile benzer şekilde hemen sonlandırılır. karşılıklı bir abonelik varsa, yayıncıdan müşteriye verilen karşı abonelik de sonlandırılır.
Ayrıntılar | |||||
---|---|---|---|---|---|
Parametreler |
|
||||
Döndürülen Değerler |
|
Abonelik İptali İsteği'ne yanıt beklenirken SubscriptionHandler
, Canceling
durumuna girer.
Fesih işlemi başladıktan sonra SubscriptionHandler
nesnesi Terminated
durumuna girer ve uygulamanın etkinlik işleyicisine bir OnSubscriptionTerminated
etkinliği gönderilir. Destek desteği etkinleştirilmezse etkinlik işleyicinin EndAbonelik() çağrısında eşzamanlı olarak çağrılabileceğini unutmayın.
Uygulamanın etkinlik işleyicisi döndürüldükten sonra, SubscriptionHandler
nesnesine ek referans yoksa nesne serbest bırakılır.
GetLinking
Binding * GetBinding( void ) const
Maksimum PerformansBildirimi Alma
uint32_t GetMaxNotificationSize( void ) const
GetPeerNodeId
uint64_t GetPeerNodeId( void ) const
Abonelik Abonelik Kimliği
WEAVE_ERROR GetSubscriptionId( uint64_t *const apSubscriptionId )
IsActive
bool IsActive( void )
İptal Ediyor
bool IsCanceling() const
Yeni Bir Başlangıç
bool IsEstablishedIdle()
IsFree
bool IsFree()
Sonlandırıldı
bool IsTerminated()
Ayarlanan Maksimum Bildirim Boyutu
void SetMaxNotificationSize( const uint32_t aMaxPayload )