nl:: Weave:: Profiles:: DataManagement_Legacy
Questo spazio dei nomi include tutte le interfacce all'interno di Weave per il profilo Weave Data Management (WDM) che stanno per essere ritirato.
Riepilogo
Typedef |
|
---|---|
TopicIdentifier
|
typedefuint64_t
L'identificatore dell'argomento. |
Funzioni |
|
---|---|
CheckTLVType(nl::Weave::TLV::TLVType aType, nl::Weave::TLV::TLVReader & aReader)
|
bool
|
CheckWDMTag(uint32_t aTagNum, nl::Weave::TLV::TLVReader & aReader)
|
bool
Seleziona un tag specifico di WDM.
|
CloseDataListElement(nl::Weave::TLV::TLVReader & aReader)
|
Interrompi la lettura di un elemento dell'elenco di dati WDM.
|
CloseList(nl::Weave::TLV::TLVReader & aReader)
|
Interrompi la lettura di un percorso o di un elenco di dati di WDM.
|
EncodeDeprecatedPath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint64_t & aInstanceId, uint32_t aPathLen, ...)
|
Codifica un percorso WDM con tag deprecati e un ID istanza con numero intero.
|
EncodeDeprecatedPath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const char *aInstanceId, uint32_t aPathLen, ...)
|
Codifica un percorso WDM con tag deprecati e un ID istanza stringa.
|
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint64_t & aInstanceId, uint32_t aPathLen, ...)
|
Codifica un percorso WDM con un ID istanza di profilo con numero intero.
|
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint32_t aInstanceIdLen, const uint8_t *aInstanceId, uint32_t aPathLen, ...)
|
Codificare un percorso WDM con un ID di istanza array di byte.
|
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const char *aInstanceId, uint32_t aPathLen, ...)
|
Codificare un percorso WDM con un ID istanza stringa.
|
EndDataListElement(nl::Weave::TLV::TLVWriter & aWriter)
|
Completa la scrittura di un elemento dell'elenco di dati.
|
EndEncodePath(TLVWriter & aWriter, TLVType & mOuterContainer, WEAVE_ERROR mError)
|
|
EndList(nl::Weave::TLV::TLVWriter & aWriter)
|
Completa la scrittura di un elenco di percorsi o di un elenco di dati.
|
EndList(ReferencedTLVData & aList, nl::Weave::TLV::TLVWriter & aWriter)
|
Completa la scrittura di un elenco di percorsi o di un elenco di dati.
|
IsPublisherSpecific(const TopicIdentifier & aTopicId)
|
bool
Verifica se un ID argomento è specifico del publisher.
|
OpenDataList(ReferencedTLVData & aDataList, nl::Weave::TLV::TLVReader & aReader)
|
Inizia a leggere un elenco di dati.
|
OpenDataListElement(nl::Weave::TLV::TLVReader & aReader, nl::Weave::TLV::TLVReader & aPathReader, uint64_t & aVersion)
|
Inizia a leggere un elemento dell'elenco di dati.
|
OpenPathList(ReferencedTLVData & aPathList, nl::Weave::TLV::TLVReader & aReader)
|
Inizia a leggere un elenco di percorsi.
|
PublisherSpecificTopicId(void)
|
Genera da zero un ID argomento specifico del publisher.
|
SendStatusReport(ExchangeContext *aExchangeCtx, StatusReport & aStatus)
|
|
StartDataList(nl::Weave::TLV::TLVWriter & aWriter)
|
Inizia a scrivere un elenco di dati.
|
StartDataList(ReferencedTLVData & aDataList, nl::Weave::TLV::TLVWriter & aWriter)
|
Inizia a scrivere un elenco di dati su un determinato oggetto ReferencedTLVData.
|
StartDataListElement(nl::Weave::TLV::TLVWriter & aWriter)
|
Inizia a scrivere un elemento dell'elenco di dati.
|
StartEncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, TLVType & mOuterContainer, TLVType & mPath)
|
|
StartPathList(nl::Weave::TLV::TLVWriter & aWriter)
|
Inizia a scrivere un elenco di percorsi.
|
TxnResponseHandler(ExchangeContext *anExchangeCtx, const IPPacketInfo *anAddrInfo, const WeaveMessageInfo *aMsgInfo, uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aMsg)
|
void
|
TxnTimeoutHandler(ExchangeContext *anExchangeCtx)
|
void
|
ValidateTLVType(nl::Weave::TLV::TLVType aType, nl::Weave::TLV::TLVReader & aReader)
|
|
ValidateWDMTag(uint32_t aTagNum, nl::Weave::TLV::TLVReader & aReader)
|
Verifica che un elemento TLV in fase di lettura abbia il tag WDM previsto.
|
Corsi |
|
---|---|
nl:: |
La classe Binding gestisce lo stato delle comunicazioni per conto di un'entità applicativa utilizzando Weave. |
nl:: |
Una classe astratta contenente le definizioni del metodo di conferma e indicazione richieste dal client WDM. |
nl:: |
Una classe ausiliaria utilizzata quando si desidera l'assistenza per l'abbonamento e le notifiche su un client WDM. |
nl:: |
La classe base astratta per i client WDM specifici dell'applicazione. |
nl:: |
La classe di base astratta per i publisher WDM specifici dell'applicazione. |
nl:: |
La classe ausiliaria astratta ProfileDatabase. |
nl:: |
La classe del motore del protocollo WDM. |
nl:: |
Una classe astratta contenente le definizioni dei metodi di conferma e notifica richieste dal publisher WDM. |
Enumerazioni
@103
@103
Proprietà | |
---|---|
kStatus_CancelSuccess
|
Questo codice di stato precedente indica che un abbonamento è stato annullato correttamente. Questo codice di stato indica che un abbonamento è stato annullato correttamente. |
kStatus_IllegalReadRequest
|
Questo codice di stato legacy indica che il nodo che richiede la lettura di un determinato elemento di dati non dispone dell'autorizzazione necessaria. Questo codice di stato indica che il nodo che richiede la lettura di un determinato elemento di dati non dispone dell'autorizzazione necessaria. |
kStatus_IllegalWriteRequest
|
Questo codice di stato legacy indica che il nodo che richiede la scrittura di un determinato elemento di dati non dispone dell'autorizzazione necessaria. Questo codice di stato indica che il nodo che richiede la scrittura di un determinato elemento di dati non dispone dell'autorizzazione necessaria. |
kStatus_InvalidPath
|
Questo codice di stato legacy indica che un percorso nell'elenco dei percorsi di un frame della richiesta di visualizzazione o aggiornamento non corrisponde allo schema residente nel nodo dell'autore della risposta. Questo codice di stato indica che un percorso nell'elenco dei percorsi di un frame della richiesta di visualizzazione o aggiornamento non corrisponde allo schema residente nel nodo dell'intervistato. |
kStatus_InvalidVersion
|
Questo codice di stato precedente indica che la versione dei dati inclusi in una richiesta di aggiornamento non corrisponde alla versione più recente sul publisher, pertanto non è stato possibile applicare l'aggiornamento. Questo codice di stato indica che la versione dei dati inclusi in una richiesta di aggiornamento non corrisponde alla versione più recente sul publisher, pertanto non è stato possibile applicare l'aggiornamento. |
kStatus_UnknownTopic
|
Questo codice di stato precedente indica che l'identificatore dell'argomento fornito in una richiesta di annullamento o in una notifica non corrisponde ad alcun abbonamento esistente sul nodo ricevente. Questo codice di stato indica che l'identificatore dell'argomento fornito in una richiesta di annullamento o in una notifica non corrisponde ad alcun abbonamento esistente sul nodo ricevente. |
kStatus_UnsupportedSubscriptionMode
|
Questo codice di stato precedente indica che la modalità di abbonamento richiesta non è supportata dal dispositivo ricevente. Questo codice di stato indica che la modalità di abbonamento richiesta non è supportata dal dispositivo ricevente. |
@166
@166
Dimensioni di tabelle e pool WDM.
WDM definisce i vari pool e tabelle necessari per il suo funzionamento, come indicato di seguito.
Pool di transazioni client:
- kViewPoolSize
- kSubscribePoolSize
- kCancelSubscriptionPoolSize
- kUpdatePoolSize
Pool di transazioni del publisher:
- kNotifyPoolSize
Tabelle del motore protocollo:
- kTransactionTableSize
- kBindingTableSize
Tabelle correlate agli abbonamenti:
- kNotifierTableSize (solo client)
- kSubscriptionMgrTableSize (solo publisher)
Tieni presente che si tratta di quantità configurabili e che i valori per piattaforma vengono visualizzati nel file WeaveConfig.h associato.
Proprietà | |
---|---|
kBindingTableSize
|
Queste sono le dimensioni predefinite della tabella di associazione nel motore del protocollo WDM. Questo valore può essere configurato tramite WEAVE_CONFIG_WDM_BINDING_TABLE_SIZE. |
kCancelSubscriptionPoolSize
|
Queste sono le dimensioni predefinite del pool di transazioni della richiesta di annullamento della sottoscrizione per un client WDM. Questo valore può essere configurato tramite WEAVE_CONFIG_WDM_CANCEL_SUBSCRIPTION_POOL_SIZE. |
kNotifierTableSize
|
Queste sono le dimensioni predefinite della tabella di notifica per i client WDM. Questo valore può essere configurato tramite WEAVE_CONFIG_WDM_NOTIFIER_TABLE_SIZE. |
kNotifyPoolSize
|
Queste sono le dimensioni predefinite del pool di transazioni della richiesta di notifica per un publisher WDM. Questo valore può essere configurato tramite WEAVE_CONFIG_WDM_NOTIFY_POOL_SIZE. |
kSubscribePoolSize
|
Queste sono le dimensioni predefinite del pool di transazioni della richiesta di sottoscrizione per un client WDM. Questo valore può essere configurato tramite WEAVE_CONFIG_WDM_SUBSCRIBE_POOL_SIZE. |
kSubscriptionMgrTableSize
|
Questa è la dimensione predefinita della tabella delle sottoscrizioni per i publisher WDM. Questo valore può essere configurato tramite WEAVE_CONFIG_WDM_SUBSCRIPTION_MGR_TABLE_SIZE. |
kTransactionTableSize
|
Questa è la dimensione predefinita della tabella delle transazioni nel motore del protocollo WDM. Questo valore può essere configurato tramite WEAVE_CONFIG_WDM_TRANSACTION_TABLE_SIZE. |
kUpdatePoolSize
|
Questa è la dimensione predefinita del pool di transazioni della richiesta di aggiornamento per un client WDM. Questo valore può essere configurato tramite WEAVE_CONFIG_WDM_UPDATE_POOL_SIZE. |
kViewPoolSize
|
Queste sono le dimensioni predefinite del pool di transazioni della richiesta di visualizzazione per un client WDM. Questo valore può essere configurato tramite WEAVE_CONFIG_WDM_VIEW_POOL_SIZE. |
@167
@167
I tipi di messaggi del profilo WDM.
Questi valori vengono richiamati nella specifica di gestione dei dati.
NOTA! A partire dal primo trimestre del 2015, i tipi di messaggi utilizzati nelle versioni precedenti di WDM sono stati ritirati e ne sono stati definiti nuovi tipi, che riflettono una variazione sufficiente dei dettagli di pacchettizzazione e analisi precedenti per giustificare un'interruzione pulita.
Proprietà | |
---|---|
kMsgType_CancelSubscriptionRequest
|
Messaggio di richiesta di annullamento dell'iscrizione. |
kMsgType_CancelSubscriptionRequest_Deprecated
|
obsoleto |
kMsgType_NotifyRequest
|
Messaggio di richiesta di notifica. |
kMsgType_NotifyRequest_Deprecated
|
obsoleto |
kMsgType_SubscribeRequest
|
Messaggio di richiesta di iscrizione. |
kMsgType_SubscribeRequest_Deprecated
|
obsoleto |
kMsgType_SubscribeResponse
|
Messaggio di risposta "Iscriviti". |
kMsgType_SubscribeResponse_Deprecated
|
obsoleto |
kMsgType_UpdateRequest
|
Aggiorna il messaggio di richiesta. |
kMsgType_UpdateRequest_Deprecated
|
obsoleto |
kMsgType_ViewRequest
|
Visualizza il messaggio di richiesta. |
kMsgType_ViewRequest_Deprecated
|
obsoleto |
kMsgType_ViewResponse
|
Visualizza messaggio di risposta. |
kMsgType_ViewResponse_Deprecated
|
obsoleto |
@168
@168
Varie costanti specifiche di WDM.
Proprietà | |
---|---|
kDefaultBindingTableIndex
|
L'indice dell'associazione predefinita in una tabella di associazioni del motore di protocollo con più di una voce. |
kInstanceIdNotSpecified
|
Nelle chiamate che richiedono la specifica di un'istanza di profilo, indica "nessuno". Molto spesso, ciò significa che è presente una sola istanza del profilo nell'entità in questione. |
kResponseTimeoutNotSpecified
|
Nei metodi per richiedere una transazione, indica che il chiamante ha rifiutato di specificare un timeout. In genere, questo significa che deve essere utilizzato un valore predefinito. |
kTransactionIdNotSpecified
|
Nei metodi e nelle strutture di dati che utilizzano un ID transazione, indica "nessuno" o un valore carattere jolly. |
kVersionNotSpecified
|
Nelle chiamate che richiedono la specifica di una versione dei dati, indica "nessuna versione particolare". |
kWeaveTLVControlByteLen
|
La lunghezza di un byte di controllo TLV, utilizzata nei metodi di supporto che codificano le strutture WDM in TLV. |
kWeaveTLVTagLen
|
La lunghezza standard in byte di un tag TLV completo, utilizzata nei metodi di supporto che codificano le strutture WDM in TLV. |
@169
@169
Codici di stato specifici di WDM.
Proprietà | |
---|---|
kStatus_CancelSuccess
|
Questo codice di stato precedente indica che un abbonamento è stato annullato correttamente. Questo codice di stato indica che un abbonamento è stato annullato correttamente. |
kStatus_IllegalReadRequest
|
Questo codice di stato legacy indica che il nodo che richiede la lettura di un determinato elemento di dati non dispone dell'autorizzazione necessaria. Questo codice di stato indica che il nodo che richiede la lettura di un determinato elemento di dati non dispone dell'autorizzazione necessaria. |
kStatus_IllegalWriteRequest
|
Questo codice di stato legacy indica che il nodo che richiede la scrittura di un determinato elemento di dati non dispone dell'autorizzazione necessaria. Questo codice di stato indica che il nodo che richiede la scrittura di un determinato elemento di dati non dispone dell'autorizzazione necessaria. |
kStatus_InvalidPath
|
Questo codice di stato legacy indica che un percorso nell'elenco dei percorsi di un frame della richiesta di visualizzazione o aggiornamento non corrisponde allo schema residente nel nodo dell'autore della risposta. Questo codice di stato indica che un percorso nell'elenco dei percorsi di un frame della richiesta di visualizzazione o aggiornamento non corrisponde allo schema residente nel nodo dell'intervistato. |
kStatus_InvalidVersion
|
Questo codice di stato precedente indica che la versione dei dati inclusi in una richiesta di aggiornamento non corrisponde alla versione più recente sul publisher, pertanto non è stato possibile applicare l'aggiornamento. Questo codice di stato indica che la versione dei dati inclusi in una richiesta di aggiornamento non corrisponde alla versione più recente sul publisher, pertanto non è stato possibile applicare l'aggiornamento. |
kStatus_UnknownTopic
|
Questo codice di stato precedente indica che l'identificatore dell'argomento fornito in una richiesta di annullamento o in una notifica non corrisponde ad alcun abbonamento esistente sul nodo ricevente. Questo codice di stato indica che l'identificatore dell'argomento fornito in una richiesta di annullamento o in una notifica non corrisponde ad alcun abbonamento esistente sul nodo ricevente. |
kStatus_UnsupportedSubscriptionMode
|
Questo codice di stato precedente indica che la modalità di abbonamento richiesta non è supportata dal dispositivo ricevente. Questo codice di stato indica che la modalità di abbonamento richiesta non è supportata dal dispositivo ricevente. |
@170
@170
Tag di protocollo di gestione dei dati.
Il protocollo di gestione dei dati definisce un numero di tag da utilizzare nella rappresentazione TLV dei dati del profilo.
Come sempre, esistono problemi di compatibilità tra il nuovo WDM e il vecchio. In passato, tutti questi tag venivano applicati come specifici per ogni profilo, il che era uno spreco di spazio. Ora stiamo utilizzando i tag di contesto, ove possibile, ma dobbiamo mantenere quelli vecchi (e avere un meccanismo per la codifica dei percorsi con loro a posto) ove opportuno.
Il tag kTag_WDMDataListElementData non è stato utilizzato nelle versioni precedenti ed è stato completamente ignorato dal codice, pertanto non dobbiamo fornire una versione deprecata.
Proprietà | |
---|---|
kTag_WDMDataList
|
L'elemento è un elenco di strutture contenenti percorso, versione facoltativa ed elementi di dati. Tipo di tag: specifico del profilo Tipo di elemento: Array Disposizione: Primo livello |
kTag_WDMDataListElementData
|
L'elemento rappresenta i dati a cui punta un determinato percorso e che hanno la versione specificata. Tipo di tag: Tipo di elemento specifico del contesto: Qualsiasi disposizione: Obbligatorio |
kTag_WDMDataListElementData_Deprecated
|
Deprecato. Tipo di tag: Tipo di elemento specifico del contesto: Qualsiasi disposizione: Obbligatorio |
kTag_WDMDataListElementPath
|
L'elemento è il componente del percorso di un elemento dell'elenco di dati. Tipo di tag: Tipo di elemento specifico del contesto: Disposizione percorso: Obbligatorio |
kTag_WDMDataListElementPath_Deprecated
|
Deprecato. Tipo di tag: Tipo di elemento specifico del profilo: Disposizione percorso: Obbligatorio |
kTag_WDMDataListElementVersion
|
L'elemento è il componente della versione di un elemento dell'elenco di dati. Tipo di tag: specifico per il contesto Tipo di elemento: Numero intero Disposizione: Obbligatorio |
kTag_WDMDataListElementVersion_Deprecated
|
Deprecato. Tipo di tag: Tipo di elemento specifico del profilo: Numero intero Disposizione: Obbligatorio |
kTag_WDMPathArrayIndexSelector
|
L'elemento percorso corrisponde a un array nello schema e l'elemento intero contenuto deve essere utilizzato come indice in quell'array. Tipo di tag: Tipo di elemento specifico del profilo: Numero intero Disposizione: opzionale |
kTag_WDMPathArrayValueSelector
|
L'elemento del percorso corrisponde a un array nello schema e l'elemento incapsulato deve essere utilizzato come selettore di record. Tipo di tag: Tipo di elemento specifico del profilo: Struttura Disposizione: Facoltativa |
kTag_WDMPathList
|
L'elemento è un elenco di percorsi TLV. Tipo di tag: specifico del profilo Tipo di elemento: Array Disposizione: Primo livello |
kTag_WDMPathProfile
|
L'elemento è una struttura utilizzata per avviare un percorso e contiene le informazioni del profilo alla luce delle quali i tag nel percorso devono essere interpretati. Tipo di tag: Tipo di elemento specifico del profilo: Struttura Disposizione: Obbligatorio |
kTag_WDMPathProfileId
|
L'elemento è un componente ID profilo dell'elemento profilo del percorso che inizia un percorso TLV. Tipo di tag: specifico per il contesto Tipo di elemento: Numero intero Disposizione: Obbligatorio |
kTag_WDMPathProfileId_Deprecated
|
Deprecato. Tipo di tag: Tipo di elemento specifico del profilo: Numero intero Disposizione: Obbligatorio |
kTag_WDMPathProfileInstance
|
L'elemento è un'istanza di profilo che può seguire l'ID profilo in un percorso TLV. Tieni presente che un nodo può avere o meno più istanze di un determinato profilo e, nel caso in cui sia presente un solo profilo, questo elemento può essere omesso. Tipo di tag: Tipo di elemento specifico del contesto: Qualsiasi disposizione: opzionale |
kTag_WDMPathProfileInstance_Deprecated
|
Deprecato. Tipo di tag: Tipo di elemento specifico del profilo: Qualsiasi disposizione: opzionale |
@171
@171
ID argomento distinto.
Esistono tre distinti ID argomento di interesse, tutti e tre con formato "specifico per il publisher".
Proprietà | |
---|---|
kAnyTopicId
|
È riservato come ID argomento con caratteri jolly. |
kTopicIdNotSpecified
|
Questo è un valore speciale riservato per esprimere un ID argomento non valido o con caratteri jolly. |
kTopicIdPublisherSpecificMask
|
Viene utilizzato come maschera per creare o scomporre un ID topci. |
WeaveTransportOption
WeaveTransportOption
Opzioni di trasporto WDM.
Queste sono opzioni di trasporto che si escludono a vicenda per WDM.
Proprietà | |
---|---|
kTransport_TCP
|
Il trasporto di base è il TCP. L'associazione può essere completata utilizzando il gestore del servizio o direttamente tramite il livello del messaggio. |
kTransport_UDP
|
Il trasporto sottostante è esclusivamente UDP. |
kTransport_WRMP
|
Il trasporto di base è esclusivamente UDP, ma con miglioramenti dell'affidabilità del "livello di supporto dell'applicazione". |
Typedef
TopicIdentifier
uint64_t TopicIdentifier
L'identificatore dell'argomento.
Gli identificatori di argomento sono quantità a 64 bit con due usi/semantici correlati. Prima di tutto, possono essere utilizzati come una forma abbreviata convenzionale per un insieme di percorsi ben noto, ad esempio "il rilevatore di fumo Nest". Gli ID argomento utilizzati in questo modo, come gli identificatori profilo, devono contenere un codice fornitore che impedisca agli ID argomento scelti autonomamente da fornitori diversi di entrare in conflitto, come indicato di seguito:
bit 48 - 63 | bit 0 - 47 |
ID fornitore | Numero argomento |
WeaveVendorIdentifiers.hpp
Funzioni
CheckTLVType
bool CheckTLVType( nl::Weave::TLV::TLVType aType, nl::Weave::TLV::TLVReader & aReader )
Verifica che un elemento TLV letto abbia il tipo previsto TLV.
Confronta un determinato tipo di TLV con il tipo di elemento nell'intestazione di un lettore TLV.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
true se il valore TLVType dell'elemento e aType corrispondono.
|
WeaveTLVTypes.h
CheckWDMTag
bool CheckWDMTag( uint32_t aTagNum, nl::Weave::TLV::TLVReader & aReader )
Seleziona un tag specifico di WDM.
Confronta il numero di un tag specifico per WDM, da .../data-management/DMConstants.h, al tag effettivo nella testa di un lettore TLV.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
true iff aReader.GetTag() produce un tag che corrisponde a uno dei moduli di tag previsti per il numero di tag specificato.
|
CloseDataListElement
WEAVE_ERROR CloseDataListElement( nl::Weave::TLV::TLVReader & aReader )
Interrompi la lettura di un elemento dell'elenco di dati WDM.
Questo metodo presuppone che l'elemento in questione faccia parte di un elenco di dati WDM e quindi passa kTLVType_Array a exitContainer().
Dettagli | |||
---|---|---|---|
Parametri |
|
||
Restituisce |
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un WEAVE_ERROR che indica l'impossibilità di uscire da un container.
|
CloseList
WEAVE_ERROR CloseList( nl::Weave::TLV::TLVReader & aReader )
Interrompi la lettura di un percorso o di un elenco di dati di WDM.
Questo metodo presuppone che l'elenco in questione sia l'elemento TLV più in alto e quindi passa kTLVType_Sructure aExitContainer().
Dettagli | |||
---|---|---|---|
Parametri |
|
||
Restituisce |
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un WEAVE_ERROR che indica l'impossibilità di uscire da un container.
|
EncodeDeprecatedPath
WEAVE_ERROR EncodeDeprecatedPath( TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint64_t & aInstanceId, uint32_t aPathLen, ... )
Codifica un percorso WDM con tag deprecati e un ID istanza con numero intero.
Nota:codifica un percorso utilizzando il set di tag deprecato accettato dal servizio prima della versione 2.0 di Weave. Questa versione del metodo accetta un identificatore di istanza numerico. Questo metodo avvia un contenitore con ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfile) e poi inserisce l'ID profilo con ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileId_JSON). Inserisce quindi l'ID istanza con ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileInstance_JSON). Questa è una delle versioni deprecate per la codifica di un percorso e i nuovi design non devono utilizzare questo formato.
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||
Restituisce |
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un WEAVE_ERROR che riflette l'impossibilità di formattare il percorso specificato.
|
EncodeDeprecatedPath
WEAVE_ERROR EncodeDeprecatedPath( TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const char *aInstanceId, uint32_t aPathLen, ... )
Codifica un percorso WDM con tag deprecati e un ID istanza stringa.
Nota:codifica un percorso utilizzando il set di tag obsoleto (vedi DMConstants.h). Questa versione del metodo accetta una stringa ID istanza. Questo metodo avvia un contenitore con ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfile) e poi inserisce l'ID profilo con ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileId_JSON). Inserisce quindi l'ID istanza con ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileInstance_JSON). Questa è una delle versioni deprecate per la codifica di un percorso e i nuovi design non devono utilizzare questo formato.
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||
Restituisce |
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un WEAVE_ERROR che riflette l'impossibilità di formattare il percorso specificato.
|
EncodePath
WEAVE_ERROR EncodePath( TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint64_t & aInstanceId, uint32_t aPathLen, ... )
Codifica un percorso WDM con un ID istanza di profilo con numero intero.
Nota: scrivi un percorso TLV del tipo utilizzato nella gestione dei dati in cui, in particolare, sia presente una designazione del profilo all'inizio per consentire l'interpretazione degli elementi del percorso successivi. Questa versione del metodo accetta un ID istanza di profilo con numero intero.
Questo metodo inserisce l'ID istanza utilizzando ContextTag(kTag_WDMPathProfileInstance), la versione più recente per la codifica di un percorso.
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||
Restituisce |
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un WEAVE_ERROR che riflette l'impossibilità di formattare il percorso specificato.
|
EncodePath
WEAVE_ERROR EncodePath( TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint32_t aInstanceIdLen, const uint8_t *aInstanceId, uint32_t aPathLen, ... )
Codificare un percorso WDM con un ID di istanza array di byte.
Nota: scrivi un percorso TLV del tipo utilizzato nella gestione dei dati in cui, in particolare, sia presente una designazione del profilo all'inizio per consentire l'interpretazione degli elementi del percorso successivi. Questa versione del metodo prende un ID istanza di profilo di array di byte insieme a una lunghezza.
Questo metodo inserisce l'ID istanza utilizzando ContextTag(kTag_WDMPathProfileInstance), la versione più recente per la codifica di un percorso.
Dettagli | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||||
Restituisce |
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un WEAVE_ERROR che riflette l'impossibilità di formattare il percorso specificato.
|
EncodePath
WEAVE_ERROR EncodePath( TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const char *aInstanceId, uint32_t aPathLen, ... )
Codificare un percorso WDM con un ID istanza stringa.
Nota: scrivi un percorso TLV del tipo utilizzato nella gestione dei dati in cui, in particolare, sia presente una designazione del profilo all'inizio per consentire l'interpretazione degli elementi del percorso successivi. Questa versione del metodo accetta un ID istanza di profilo stringa.
Questo metodo inserisce l'ID istanza utilizzando ContextTag(kTag_WDMPathProfileInstance), la versione più recente per la codifica di un percorso.
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||
Restituisce |
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un WEAVE_ERROR che riflette l'impossibilità di formattare il percorso specificato.
|
EndDataListElement
WEAVE_ERROR EndDataListElement( nl::Weave::TLV::TLVWriter & aWriter )
Completa la scrittura di un elemento dell'elenco di dati.
Scrivi il valore TLV per la fine di un elemento dell'elenco di dati di WDM. Nota che questo passa automaticamente in un tipo di kTLVType_Array alla chiamata EndContainer() supponendo che si chiude sempre un elemento elenco.
Dettagli | |||
---|---|---|---|
Parametri |
|
||
Restituisce |
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un WEAVE_ERROR che indica l'impossibilità di terminare un container.
|
EndEncodePath
WEAVE_ERROR EndEncodePath( TLVWriter & aWriter, TLVType & mOuterContainer, WEAVE_ERROR mError )
EndList
WEAVE_ERROR EndList( nl::Weave::TLV::TLVWriter & aWriter )
Completa la scrittura di un elenco di percorsi o di un elenco di dati.
Scrivi il valore TLV alla fine di un percorso o un elenco di dati di WDM. Inoltre, finalizza l'autore.
Dettagli | |||
---|---|---|---|
Parametri |
|
||
Restituisce |
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un WEAVE_ERROR che indica l'impossibilità di terminare un container.
|
EndList
WEAVE_ERROR EndList( ReferencedTLVData & aList, nl::Weave::TLV::TLVWriter & aWriter )
Completa la scrittura di un elenco di percorsi o di un elenco di dati.
Scrivi il valore TLV alla fine di un percorso o un elenco di dati di WDM. Inoltre, finalizza l'autore. In questo caso, l'oggetto ReferencedTLVData in cui viene scritto il TLV viene trasmesso e modificato per riflettere la quantità di dati scritti.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un WEAVE_ERROR che indica l'impossibilità di terminare un container.
|
IsPublisherSpecific
bool IsPublisherSpecific( const TopicIdentifier & aTopicId )
Verifica se un ID argomento è specifico del publisher.
Dettagli | |||
---|---|---|---|
Parametri |
|
||
Restituisce |
true se l'ID argomento è specifico del publisher, altrimenti false
|
OpenDataList
WEAVE_ERROR OpenDataList( ReferencedTLVData & aDataList, nl::Weave::TLV::TLVReader & aReader )
Inizia a leggere un elenco di dati.
Dati un lettore aggiornato e un elenco di dati, inizia a leggere l'elenco e convalida i tag e i tipi inizialmente riscontrati nel processo. Se tutto funziona correttamente, il lettore si interrompe dopo aver inserito il contenitore dell'elenco.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un valore WEAVE_ERROR che indica un errore, apri l'elenco di dati e/o convalida i tag e i tipi pertinenti.
|
OpenDataListElement
WEAVE_ERROR OpenDataListElement( nl::Weave::TLV::TLVReader & aReader, nl::Weave::TLV::TLVReader & aPathReader, uint64_t & aVersion )
Inizia a leggere un elemento dell'elenco di dati.
Dato un lettore posizionato in un elemento dell'elenco di dati, inizia a leggere l'elemento e convalida i tag e i tipi inizialmente riscontrati nel processo. Se tutto va bene, il lettore viene posizionato in corrispondenza dei dati dell'elemento di dati e il lettore del percorso di entrata/uscita viene posizionato nel percorso corrispondente.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
||||||
Restituisce |
WEAVE_NO_ERROR in caso di esito positivo oppure WEAVE_ERROR associato all'apertura e alla lettura dell'elemento dell'elenco di dati.
|
OpenPathList
WEAVE_ERROR OpenPathList( ReferencedTLVData & aPathList, nl::Weave::TLV::TLVReader & aReader )
Inizia a leggere un elenco di percorsi.
Dati un nuovo lettore e un nuovo elenco di percorsi, inizia a leggere l'elenco e convalida i tag e i tipi riscontrati inizialmente nel processo. Se tutto funziona correttamente, il lettore si interrompe dopo aver inserito il contenitore dell'elenco.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
WEAVE_NO_ERROR in caso di esito positivo; in caso contrario, un WEAVE_ERROR che riflette un errore relativo all'apertura dell'elenco dei percorsi e/o alla convalida dei tag e dei tipi pertinenti.
|
PublisherSpecificTopicId
TopicIdentifier PublisherSpecificTopicId( void )
Genera da zero un ID argomento specifico del publisher.
Dettagli | |
---|---|
Restituisce |
con il nuovo identificatore dell'argomento.
|
SendStatusReport
WEAVE_ERROR SendStatusReport( ExchangeContext *aExchangeCtx, StatusReport & aStatus )
StartDataList
WEAVE_ERROR StartDataList( nl::Weave::TLV::TLVWriter & aWriter )
Inizia a scrivere un elenco di dati.
Scrivi il valore TLV per l'inizio di un elenco di dati WDM, ad esempio come argomento principale di UpdateRequest().
Dettagli | |||
---|---|---|---|
Parametri |
|
||
Restituisce |
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un WEAVE_ERROR che indica l'impossibilità di avviare un container.
|
StartDataList
WEAVE_ERROR StartDataList( ReferencedTLVData & aDataList, nl::Weave::TLV::TLVWriter & aWriter )
Inizia a scrivere un elenco di dati su un determinato oggetto ReferencedTLVData.
Scrivi il valore TLV per l'inizio di un elenco di dati WDM. In questo caso, supponiamo di dover scrivere l'elenco di dati a una struttura di dati TLV di riferimento. Si presume che il autore non sia inizializzato o che, in ogni caso, verrà inizializzato per puntare all'oggetto specificato.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un WEAVE_ERROR che indica l'impossibilità di avviare un container.
|
StartDataListElement
WEAVE_ERROR StartDataListElement( nl::Weave::TLV::TLVWriter & aWriter )
Inizia a scrivere un elemento dell'elenco di dati.
Scrivi il valore TLV per l'inizio di un elemento dell'elenco di dati di WDM.
Dettagli | |||
---|---|---|---|
Parametri |
|
||
Restituisce |
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un WEAVE_ERROR che indica l'impossibilità di avviare un container.
|
StartEncodePath
WEAVE_ERROR StartEncodePath( TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, TLVType & mOuterContainer, TLVType & mPath )
StartPathList
WEAVE_ERROR StartPathList( nl::Weave::TLV::TLVWriter & aWriter )
Inizia a scrivere un elenco di percorsi.
Scrivi il valore TLV per l'inizio di un elenco di percorsi WDM, ad esempio come argomento principale di ViewRequest().
Dettagli | |||
---|---|---|---|
Parametri |
|
||
Restituisce |
WEAVE_NO_ERROR In caso di esito positivo. In caso contrario, restituisci un WEAVE_ERROR che indica l'impossibilità di avviare un container.
|
TxnResponseHandler
void TxnResponseHandler( ExchangeContext *anExchangeCtx, const IPPacketInfo *anAddrInfo, const WeaveMessageInfo *aMsgInfo, uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aMsg )
TxnTimeoutHandler
void TxnTimeoutHandler( ExchangeContext *anExchangeCtx )
ValidateTLVType
WEAVE_ERROR ValidateTLVType( nl::Weave::TLV::TLVType aType, nl::Weave::TLV::TLVReader & aReader )
Verifica che un elemento TLV letto abbia il tipo previsto TLV.
Confronta un determinato tipo di TLV con il tipo di elemento nell'intestazione di un lettore TLV e restituisci un errore in assenza di corrispondenza.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
WEAVE_NO_ERROR se esiste una corrispondenza oppure WEAVE_ERROR_WRONG_TLV_TYPE in caso contrario.
|
WeaveTLVTypes.h
ValidateWDMTag
WEAVE_ERROR ValidateWDMTag( uint32_t aTagNum, nl::Weave::TLV::TLVReader & aReader )
Verifica che un elemento TLV in fase di lettura abbia il tag WDM previsto.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
WEAVE_NO_ERROR In caso di esito positivo. Altrimenti, WEAVE_ERROR_INVALID_TLV_TAG se il tag non corrisponde al numero di tag specificato quando viene interpretato come tag WDM.
|