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

Riepilogo

Tipi pubblici

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

Funzioni statiche pubbliche

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

Funzioni pubbliche

AbortSubscription(void)
void
Questa funzione termina immediatamente una sottoscrizione: si tratta di una chiamata sincrona.
AcceptSubscribeRequest(const uint32_t aLivenessTimeoutSec)
EndSubscription(const uint32_t aReasonProfileId, const uint16_t aReasonStatusCode)
Questa funzione avvia una chiusura controllata dell'abbonamento e la pulizia dell'oggetto gestore.
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

Sindacati

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

Tipi pubblici

@142

 @142

EventCallback

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

EventID

 EventID

HandlerId

uint8_t HandlerId

Funzioni statiche pubbliche

DefaultEventHandler

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

Funzioni pubbliche

AbortSubscription

void AbortSubscription(
  void
)

Questa funzione termina immediatamente una sottoscrizione: si tratta di una chiamata sincrona.

Interrompere un abbonamento dell'editore.

Non viene effettuato alcun tentativo di notificare il cliente della risoluzione e il contesto dello scambio sottostante, se presente, viene interrotto immediatamente. Dopo questa chiamata, all'applicazione non verranno inviate altre notifiche su questo oggetto. Inoltre, l'applicazione non può interagire con questo oggetto in seguito tramite nessuno dei suoi metodi.

Chiude la fine di un abbonamento dell'editore senza informare il client dell'abbonamento e senza inviare un evento OnSubscriptionTerminated al gestore di eventi dell'applicazione. Se esiste una sottoscrizione reciproca, viene annullata anche la contronotifica da parte dell'editore al client.

Alla chiamata di AbortSubscription(), l'oggetto SubscriptionHandler entra nello stato Terminated. Se non ci sono ulteriori riferimenti all'oggetto al termine del processo di terminazione, l'oggetto SubscriptionHandler viene liberato.

AcceptSubscribeRequest

WEAVE_ERROR AcceptSubscribeRequest(
  const uint32_t aLivenessTimeoutSec
)

EndSubscription

WEAVE_ERROR EndSubscription(
  const uint32_t aReasonProfileId,
  const uint16_t aReasonStatusCode
)

Questa funzione avvia una chiusura controllata dell'abbonamento e la pulizia dell'oggetto gestore.

Terminare correttamente un abbonamento dell'editore.

Questa è una chiamata asincrona e informerà un client dell'imminente chiusura tramite un messaggio SubscribeCancel/StatusReport, se pertinente.

In particolare, questo rinuncia al coinvolgimento dell'applicazione in questo abbonamento. Al termine di questa chiamata, all'applicazione non verranno comunicate ulteriori attività su questo oggetto. Inoltre, l'applicazione non può interagire con questo oggetto in seguito tramite nessuno dei suoi metodi.

Chiude delicatamente la fine di un abbonamento dell'editore. Se il supporto per l'annullamento dell'abbonamento è abilitato, al client dell'abbonamento viene inviato un messaggio SubscribeCancelRequest e il sistema attende una risposta prima di terminare l'abbonamento. In caso contrario, l'abbonamento viene interrotto immediatamente in modo simile ad AbortSubscription(). Se esiste un abbonamento reciproco, viene annullata anche la contronotifica da parte dell'editore al client.

Dettagli
Parametri
[in] aReasonProfileId
ProfileId dello StatusCode che indica il motivo della chiusura
[in] aReasonStatusCode
StatusCode che indica il motivo della chiusura
Valori restituiti
Returns
un codice di errore Weave solo a scopo informativo. In caso di errore, l'oggetto verrà terminato in modo sincrono (ovvero interrotto).

In attesa di una risposta a una richiesta SubscribeCancelRequest, SubscriptionHandler entra nello stato Canceling.

Una volta iniziato il processo di terminazione, l'oggetto SubscriptionHandler entra nello stato Terminated e viene inviato un evento OnSubscriptionTerminated al gestore di eventi dell'applicazione. Tieni presente che, se il supporto dell'annullamento non è abilitato, il gestore di eventi potrebbe essere chiamato in modo sincrono all'interno della chiamata a EndSubscription().

Una volta restituito il gestore di eventi dell'applicazione, se non ci sono ulteriori riferimenti all'oggetto SubscriptionHandler, l'oggetto viene liberato.

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
)