нл:: Переплетение:: Профили:: DataManagement_Current:: Обработчик подписки
Краткое содержание
Публичные типы | |
---|---|
@142 | перечисление |
EventCallback )(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam) | определение типаvoid(* |
EventID | перечисление |
HandlerId | определение типаuint8_t |
Публичные статические функции | |
---|---|
DefaultEventHandler (EventID aEvent, const InEventParam & aInParam, OutEventParam & aOutParam) | void |
Общественные функции | |
---|---|
AbortSubscription (void) | void Эта функция немедленно прекращает подписку — это синхронный вызов. |
AcceptSubscribeRequest (const uint32_t aLivenessTimeoutSec) | |
EndSubscription (const uint32_t aReasonProfileId, const uint16_t aReasonStatusCode) | Эта функция инициирует корректное завершение подписки и очистку объекта-обработчика. |
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 |
Структуры | |
---|---|
nl:: Weave:: Profiles:: DataManagement_Current:: SubscriptionHandler:: TraitInstanceInfo |
Союзы | |
---|---|
nl:: Weave:: Profiles:: DataManagement_Current:: SubscriptionHandler:: InEventParam | |
nl:: Weave:: Profiles:: DataManagement_Current:: SubscriptionHandler:: OutEventParam |
Публичные типы
@142
@142
Обратный вызов события
void(* EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)
идентификатор события
EventID
идентификатор обработчика
uint8_t HandlerId
Публичные статические функции
Обработчик событий по умолчанию
void DefaultEventHandler( EventID aEvent, const InEventParam & aInParam, OutEventParam & aOutParam )
Общественные функции
Прервать подписку
void AbortSubscription( void )
Эта функция немедленно прекращает подписку — это синхронный вызов.
Отменить подписку издателя.
Не предпринимается никаких попыток уведомить клиента о прекращении, а базовый контекст обмена, если он присутствует, немедленно прерывается. После этого вызова приложение не будет уведомляться о дальнейших действиях с этим объектом. Кроме того, после этого приложению не разрешается взаимодействовать с этим объектом посредством любого из его методов.
Завершает подписку на стороне издателя, не уведомляя клиента подписки и не доставляя событие OnSubscriptionTerminated
обработчику событий приложения. Если существует взаимная подписка, встречная подписка от издателя клиенту также прекращается.
При вызове AbortSubscription() объект SubscriptionHandler
переходит в состояние Terminated
. Если после завершения процесса завершения нет дополнительных ссылок на объект, объект SubscriptionHandler
освобождается.
ПринятьПодписатьЗапрос
WEAVE_ERROR AcceptSubscribeRequest( const uint32_t aLivenessTimeoutSec )
Завершить подписку
WEAVE_ERROR EndSubscription( const uint32_t aReasonProfileId, const uint16_t aReasonStatusCode )
Эта функция инициирует корректное завершение подписки и очистку объекта-обработчика.
Аккуратно завершите подписку издателя.
Это асинхронный вызов, который уведомляет клиента о предстоящем завершении работы через сообщение SubscribeCancel/StatusReport, где это необходимо.
Примечательно, что это отказывается от участия приложения в этой подписке. После этого вызова приложение не будет уведомляться о дальнейших действиях с этим объектом. Кроме того, после этого приложению не разрешается взаимодействовать с этим объектом посредством любого из его методов.
Грамотно завершает подписку издателя. Если включена поддержка отмены подписки, клиенту подписки отправляется сообщение SubscribeCancelRequest, и система ожидает ответа перед прекращением подписки; в противном случае подписка немедленно прекращается аналогично AbortSubscription() . Если существует взаимная подписка, встречная подписка от издателя клиенту также прекращается.
Подробности | |||||
---|---|---|---|---|---|
Параметры |
| ||||
Возвращаемые значения |
|
В ожидании ответа на SubscribeCancelRequest SubscriptionHandler
переходит в состояние Canceling
.
После начала процесса завершения объект SubscriptionHandler
переходит в состояние Terminated
, и событие OnSubscriptionTerminated
доставляется обработчику событий приложения. Обратите внимание: если поддержка отмены не включена, обработчик событий может вызываться синхронно внутри вызова EndSubscription() .
После возврата обработчика событий приложения, если нет дополнительных ссылок на объект SubscriptionHandler
, объект освобождается.
Получить привязку
Binding * GetBinding( void ) const
GetMaxNotificationSize
uint32_t GetMaxNotificationSize( void ) const
GetPeerNodeId
uint64_t GetPeerNodeId( void ) const
GetSubscriptionId
WEAVE_ERROR GetSubscriptionId( uint64_t *const apSubscriptionId )
Активен
bool IsActive( void )
Отмена
bool IsCanceling() const
IsEstablishedIdle
bool IsEstablishedIdle()
Бесплатно
bool IsFree()
Истерминировано
bool IsTerminated()
SetMaxNotificationSize
void SetMaxNotificationSize( const uint32_t aMaxPayload )