nl::Weave::Profiles::DataManagement_Current::SubscriptionHandler

Résumé

Types publics

@142 énum
EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam) typedef
void(*
EventID énum
HandlerId typedef
uint8_t

Fonctions statiques publiques

DefaultEventHandler(EventID aEvent, const InEventParam & aInParam, OutEventParam & aOutParam)
void

Fonctions publiques

AbortSubscription(void)
void
Cette fonction met immédiatement fin à un abonnement. Il s'agit d'un appel synchrone.
AcceptSubscribeRequest(const uint32_t aLivenessTimeoutSec)
EndSubscription(const uint32_t aReasonProfileId, const uint16_t aReasonStatusCode)
Cette fonction lance un arrêt progressif de l'abonnement et un nettoyage de l'objet gestionnaire.
GetBinding(void) const
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

Structs

nl::Weave::Profiles::DataManagement_Current::SubscriptionHandler::TraitInstanceInfo

Union

nl::Weave::Profiles::DataManagement_Current::SubscriptionHandler::InEventParam
nl::Weave::Profiles::DataManagement_Current::SubscriptionHandler::OutEventParam

Types publics

@142

 @142

EventCallback

void(* EventCallback)(void *const aAppState, EventID aEvent, const InEventParam &aInParam, OutEventParam &aOutParam)

EventID

 EventID

HandlerId

uint8_t HandlerId

Fonctions statiques publiques

DefaultEventHandler

void DefaultEventHandler(
  EventID aEvent,
  const InEventParam & aInParam,
  OutEventParam & aOutParam
)

Fonctions publiques

AbortSubscription

void AbortSubscription(
  void
)

Cette fonction met immédiatement fin à un abonnement. Il s'agit d'un appel synchrone.

Annuler un abonnement auprès d'un éditeur

Aucune tentative d'informer le client de l'arrêt n'est effectuée, et le contexte d'échange sous-jacent, s'il est présent, est immédiatement annulé. Après cet appel, l'application ne sera plus informée de toute autre activité sur cet objet. De plus, l'application n'est pas autorisée à interagir avec cet objet par la suite via aucune de ses méthodes.

Arrête la fin d'un abonnement par l'éditeur, sans avertir le client abonné et sans envoyer d'événement OnSubscriptionTerminated au gestionnaire d'événements de l'application. S'il existe un abonnement mutuel, l'abonnement du compteur de l'éditeur au client est également résilié.

Lorsque vous appelez AbortSubscription(), l'objet SubscriptionHandler passe à l'état Terminated. S'il n'y a plus de références à l'objet une fois le processus d'arrêt terminé, l'objet SubscriptionHandler est libéré.

AcceptSubscribeRequest

WEAVE_ERROR AcceptSubscribeRequest(
  const uint32_t aLivenessTimeoutSec
)

EndSubscription

WEAVE_ERROR EndSubscription(
  const uint32_t aReasonProfileId,
  const uint16_t aReasonStatusCode
)

Cette fonction lance un arrêt progressif de l'abonnement et un nettoyage de l'objet gestionnaire.

Mettre fin de manière concertée à un abonnement de l'éditeur

Il s'agit d'un appel asynchrone qui permet d'informer un client de l'arrêt imminent via un message SubscribeCancel/StatusReport, le cas échéant.

De plus, cela renonce à l'implication de l'application dans cet abonnement. Après cet appel, l'application ne sera plus informée de toute autre activité sur cet objet. De plus, l'application n'est pas autorisée à interagir avec cet objet par la suite via aucune de ses méthodes.

Met fin de manière concertée à la fin d'un abonnement par l'éditeur. Si la prise en charge de l'annulation d'abonnement est activée, un message SubscribeCancelRequest est envoyé au client de l'abonnement et le système attend une réponse avant de mettre fin à l'abonnement. Sinon, l'abonnement est immédiatement résilié comme pour AbortSubscription(). S'il existe un abonnement mutuel, l'abonnement du compteur de l'éditeur au client est également résilié.

Détails
Paramètres
[in] aReasonProfileId
ProfileId du StatusCode qui indique le motif de la clôture.
[in] aReasonStatusCode
StatusCode indiquant le motif de la clôture
Valeurs renvoyées
Returns
code d'erreur Weave fourni à titre indicatif uniquement. En cas d'erreur, l'objet est arrêté de manière synchrone (c'est-à-dire annulé).

En attente d'une réponse à une requête SubscribeCancelRequest, le SubscriptionHandler passe à l'état Canceling.

Une fois que le processus d'arrêt commence, l'objet SubscriptionHandler passe à l'état Terminated, et un événement OnSubscriptionTerminated est transmis au gestionnaire d'événements de l'application. Notez que si la prise en charge de l'annulation n'est pas activée, le gestionnaire d'événements peut être appelé de manière synchrone dans l'appel à EndSubscription().

Une fois le résultat renvoyé par le gestionnaire d'événements de l'application, s'il n'existe aucune autre référence à l'objet SubscriptionHandler, l'objet est libé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
)