nl:: Weave:: Profiles:: DataManagement_Legacy
Questo spazio dei nomi include tutte le interfacce all'interno del profilo Weave for the Weave Data Management (WDM) che stanno per essere deprecate.
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
Controlla 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 WDM o di un elenco di dati.
|
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 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 di 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 con profilo intero.
|
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint32_t aInstanceIdLen, const uint8_t *aInstanceId, uint32_t aPathLen, ...)
|
Codifica un percorso WDM con un ID istanza con array di byte.
|
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const char *aInstanceId, uint32_t aPathLen, ...)
|
Codifica un percorso WDM con un ID istanza di 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 dati.
|
EndList(ReferencedTLVData & aList, nl::Weave::TLV::TLVWriter & aWriter)
|
Completa la scrittura di un elenco di percorsi o di dati.
|
IsPublisherSpecific(const TopicIdentifier & aTopicId)
|
bool
Controlla 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 di un 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 in 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 letto abbia il tag WDM previsto.
|
Corsi |
|
---|---|
nl:: |
La classe Binding gestisce lo stato delle comunicazioni per conto di un'entità applicativa che utilizza Weave. |
nl:: |
Una classe astratta contenente le definizioni dei metodi di conferma e indicazione richieste dal client WDM. |
nl:: |
Classe ausiliaria utilizzata per il supporto in abbonamento e notifiche su un client WDM. |
nl:: |
La classe base astratta per i client WDM specifici dell'applicazione. |
nl:: |
La classe base astratta per i publisher WDM specifici per le applicazioni. |
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. |
kStatus_IllegalReadRequest
|
Questo codice di stato legacy indica che il nodo che richiede di leggere un determinato elemento di dati non dispone dell'autorizzazione necessaria. Questo codice di stato indica che il nodo che richiede di leggere un determinato elemento di dati non dispone dell'autorizzazione necessaria. |
kStatus_IllegalWriteRequest
|
Questo codice di stato legacy indica che il nodo che richiede di scrivere un determinato elemento di dati non dispone dell'autorizzazione necessaria. Questo codice di stato indica che il nodo che richiede di scrivere un particolare elemento di dati non dispone dell'autorizzazione necessaria. |
kStatus_InvalidPath
|
Questo codice di stato legacy indica che un percorso dall'elenco di percorsi di un frame di richiesta di visualizzazione o aggiornamento non corrisponde allo schema residente del nodo di chi risponde. Questo codice di stato indica che un percorso dall'elenco di percorsi di un frame di richiesta di visualizzazione o aggiornamento non corrisponde allo schema residente del nodo di chi risponde. |
kStatus_InvalidVersion
|
Questo codice di stato precedente indica che la versione dei dati inclusi in una richiesta di aggiornamento non corrispondeva alla versione più recente del 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 corrispondeva alla versione più recente del publisher e, di conseguenza, non è stato possibile applicare l'aggiornamento. |
kStatus_UnknownTopic
|
Questo codice di stato legacy indica che l'identificatore dell'argomento fornito in una richiesta di annullamento o in una notifica non corrispondeva ad alcuna sottoscrizione esistente sul nodo ricevente. Questo codice di stato indica che l'identificatore di argomento fornito in una richiesta di annullamento o in una notifica non corrisponde ad alcuna sottoscrizione 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 tavoli e biliardo WDM.
WDM definisce i vari pool e le tabelle necessari per il funzionamento, come segue.
Pool di transazioni client:
- kViewPoolSize
- kSubscribePoolSize
- kCancelSubscriptionPoolSize
- kUpdatePoolSize
Pool di transazioni dei publisher:
- kNotifyPoolSize
Tabelle del motore di protocollo:
- kTransactionTableSize
- kBindingTableSize
Tabelle relative agli abbonamenti:
- kNotifierTableSize (solo client)
- kSubscriptionMgrTableSize (solo publisher)
Tieni presente che si tratta di quantità configurabili e che i valori per piattaforma vengono visualizzati nella risorsa WeaveConfig.h associata.
Proprietà | |
---|---|
kBindingTableSize
|
Questa è la dimensione predefinita 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 delle richieste di annullamento dell'abbonamento per un client WDM. Questo valore può essere configurato tramite WEAVE_CONFIG_WDM_CANCEL_SUBSCRIPTION_POOL_SIZE. |
kNotifierTableSize
|
Questa è la dimensione predefinita 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 delle richieste 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 delle richieste di sottoscrizione per un client WDM. Questo valore può essere configurato tramite WEAVE_CONFIG_WDM_SUBSCRIBE_POOL_SIZE. |
kSubscriptionMgrTableSize
|
Queste sono le dimensioni predefinite della tabella delle sottoscrizioni per i publisher WDM. Questo valore può essere configurato tramite WEAVE_CONFIG_WDM_SUBSCRIPTION_MGR_TABLE_SIZE. |
kTransactionTableSize
|
Queste sono le dimensioni predefinite 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
|
Questa è la dimensione predefinita del pool di transazioni delle richieste 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 deprecati e sono stati definiti nuovi tipi di messaggi, riflettendo una variazione sufficiente con i dettagli di compressione e analisi precedenti per giustificare un'interruzione pulita.
Proprietà | |
---|---|
kMsgType_CancelSubscriptionRequest
|
Messaggio di annullamento della richiesta di abbonamento. |
kMsgType_CancelSubscriptionRequest_Deprecated
|
ritirato |
kMsgType_NotifyRequest
|
Messaggio di richiesta di notifica. |
kMsgType_NotifyRequest_Deprecated
|
ritirato |
kMsgType_SubscribeRequest
|
Messaggio di richiesta di iscrizione. |
kMsgType_SubscribeRequest_Deprecated
|
ritirato |
kMsgType_SubscribeResponse
|
Messaggio di risposta per l'iscrizione. |
kMsgType_SubscribeResponse_Deprecated
|
ritirato |
kMsgType_UpdateRequest
|
Aggiorna il messaggio di richiesta. |
kMsgType_UpdateRequest_Deprecated
|
ritirato |
kMsgType_ViewRequest
|
Visualizza il messaggio di richiesta. |
kMsgType_ViewRequest_Deprecated
|
ritirato |
kMsgType_ViewResponse
|
Visualizza messaggio di risposta. |
kMsgType_ViewResponse_Deprecated
|
ritirato |
@168
@168
Varie costanti specifiche WDM.
Proprietà | |
---|---|
kDefaultBindingTableIndex
|
L'indice dell'associazione predefinita in una tabella di associazione del motore di protocollo con più di una voce. |
kInstanceIdNotSpecified
|
Nelle chiamate che richiedono la specifica dell'istanza del profilo, indica "nessuna". Molto spesso, ciò significa che nell'entità in questione è presente una sola istanza del profilo. |
kResponseTimeoutNotSpecified
|
Nei metodi che richiedono una transazione, indica che il chiamante ha rifiutato di specificare un timeout. In genere, è necessario utilizzare un valore predefinito. |
kTransactionIdNotSpecified
|
Nei metodi e nelle strutture di dati che accettano 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, utilizzato nei metodi di supporto che codificano le strutture WDM in TLV. |
kWeaveTLVTagLen
|
La lunghezza standard in byte di un tag TLV valido, utilizzata nei metodi di supporto che codificano le strutture WDM in TLV. |
@169
@169
Codici di stato specifici del 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. |
kStatus_IllegalReadRequest
|
Questo codice di stato legacy indica che il nodo che richiede di leggere un determinato elemento di dati non dispone dell'autorizzazione necessaria. Questo codice di stato indica che il nodo che richiede di leggere un determinato elemento di dati non dispone dell'autorizzazione necessaria. |
kStatus_IllegalWriteRequest
|
Questo codice di stato legacy indica che il nodo che richiede di scrivere un determinato elemento di dati non dispone dell'autorizzazione necessaria. Questo codice di stato indica che il nodo che richiede di scrivere un particolare elemento di dati non dispone dell'autorizzazione necessaria. |
kStatus_InvalidPath
|
Questo codice di stato legacy indica che un percorso dall'elenco di percorsi di un frame di richiesta di visualizzazione o aggiornamento non corrisponde allo schema residente del nodo di chi risponde. Questo codice di stato indica che un percorso dall'elenco di percorsi di un frame di richiesta di visualizzazione o aggiornamento non corrisponde allo schema residente del nodo di chi risponde. |
kStatus_InvalidVersion
|
Questo codice di stato precedente indica che la versione dei dati inclusi in una richiesta di aggiornamento non corrispondeva alla versione più recente del 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 corrispondeva alla versione più recente del publisher e, di conseguenza, non è stato possibile applicare l'aggiornamento. |
kStatus_UnknownTopic
|
Questo codice di stato legacy indica che l'identificatore dell'argomento fornito in una richiesta di annullamento o in una notifica non corrispondeva ad alcuna sottoscrizione esistente sul nodo ricevente. Questo codice di stato indica che l'identificatore di argomento fornito in una richiesta di annullamento o in una notifica non corrisponde ad alcuna sottoscrizione 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 del 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 di consueto, si verificano problemi di compatibilità tra il nuovo WDM e il precedente. in passato tutti questi tag venivano applicati come specifici per il profilo, con una perdita di spazio. Ora, ove possibile, utilizziamo i tag di contesto, ma dobbiamo tenere a portata di mano quelli vecchi (e disporre di un meccanismo per codificare i percorsi) ove appropriato.
Il tag kTag_WDMDataListElementData non è stato utilizzato nelle versioni precedenti ed è stato completamente ignorato dal codice, pertanto non è necessario fornire una versione obsoleta.
Proprietà | |
---|---|
kTag_WDMDataList
|
L'elemento è un elenco di strutture contenenti percorso, versione facoltativa ed elementi di dati. Tipo di tag: specifico per il profilo Tipo di elemento: Array Disposizione: di primo livello |
kTag_WDMDataListElementData
|
L'elemento rappresenta i dati cui puntano un determinato percorso e che hanno la versione specificata. Tipo di tag: Tipo di elemento specifico del contesto: Qualsiasi disposizione: obbligatoria |
kTag_WDMDataListElementData_Deprecated
|
Deprecato. Tipo di tag: Tipo di elemento specifico del contesto: Qualsiasi disposizione: obbligatoria |
kTag_WDMDataListElementPath
|
L'elemento è il componente del percorso di un elemento di un elenco di dati. Tipo di tag: Tipo di elemento specifico del contesto: Percorso Disposizione: obbligatorio |
kTag_WDMDataListElementPath_Deprecated
|
Deprecato. Tipo di tag: Tipo di elemento specifico per il profilo: Percorso Disposizione: obbligatorio |
kTag_WDMDataListElementVersion
|
L'elemento è il componente della versione di un elemento di un elenco di dati. Tipo di tag: Tipo di elemento specifico del contesto: Numero intero: Obbligatorio |
kTag_WDMDataListElementVersion_Deprecated
|
Deprecato. Tipo di tag: Tipo di elemento specifico per il profilo: Numero intero: Obbligatorio |
kTag_WDMPathArrayIndexSelector
|
L'elemento del percorso corrisponde a un array nello schema e l'elemento intero contenuto deve essere utilizzato come indice all'interno dell'array. Tipo tag: specifico per il profilo Tipo di elemento: Numero intero: Facoltativo |
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 per il profilo: Struttura Disposizione: facoltativo |
kTag_WDMPathList
|
L'elemento è un elenco di percorsi TLV. Tipo di tag: specifico per il profilo Tipo di elemento: Array Disposizione: di primo livello |
kTag_WDMPathProfile
|
L'elemento è una struttura che viene utilizzata per iniziare un percorso e contiene le informazioni del profilo in modo da interpretare i tag nel percorso. Tipo di tag: Tipo di elemento specifico per il profilo: Struttura Disposizione: Obbligatoria |
kTag_WDMPathProfileId
|
L'elemento è un componente ID profilo dell'elemento profilo del percorso che inizia un percorso TLV. Tipo di tag: Tipo di elemento specifico del contesto: Numero intero: Obbligatorio |
kTag_WDMPathProfileId_Deprecated
|
Deprecato. Tipo di tag: Tipo di elemento specifico per il profilo: Numero intero: Obbligatorio |
kTag_WDMPathProfileInstance
|
L'elemento è un'istanza 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 ne sia presente una sola, questo elemento può essere omesso. Tipo di tag: Tipo di elemento specifico del contesto: Qualsiasi disposizione: facoltativo |
kTag_WDMPathProfileInstance_Deprecated
|
Deprecato. Tipo di tag: Tipo di elemento specifico per il profilo: Qualsiasi disposizione: facoltativo |
@171
@171
ID argomento distinto.
Esistono tre diversi ID argomento di interesse, tutti e tre formattati come "specifici per i publisher".
Proprietà | |
---|---|
kAnyTopicId
|
Viene riservato come ID argomento con caratteri jolly. |
kTopicIdNotSpecified
|
Si tratta di un valore speciale riservato all'espressione di 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.
Si tratta di opzioni di trasporto che si escludono a vicenda per WDM.
Proprietà | |
---|---|
kTransport_TCP
|
Il trasporto sottostante è TCP. L'associazione può essere completata utilizzando il gestore del servizio o direttamente utilizzando il livello del messaggio. |
kTransport_UDP
|
Il trasporto sottostante è esclusivamente UDP. |
kTransport_WRMP
|
Il trasporto sottostante è esclusivamente UDP ma con "livello di supporto applicazioni" e migliorarne l'affidabilità. |
Typedef
TopicIdentifier
uint64_t TopicIdentifier
L'identificatore dell'argomento.
Gli identificatori di argomenti sono quantità a 64 bit con due usi/semantici correlati. Prima di tutto, possono essere utilizzati come forma convenzionale per un insieme di percorsi noti, ad esempio "il rilevatore di fumo Nest". Gli ID argomento che vengono utilizzati in questo modo, come gli identificatori di profilo, devono contenere un codice fornitore che impedisce agli ID argomento scelti autonomamente da diversi fornitori di creare conflitti, come segue:
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 sia del tipo TLV previsto.
Confronta un determinato tipo di TLV con il tipo di elemento all'inizio di un lettore TLV.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
true iff il TLVType dell'elemento e aType corrispondono.
|
WeaveTLVTypes.h
CheckWDMTag
bool CheckWDMTag( uint32_t aTagNum, nl::Weave::TLV::TLVReader & aReader )
Controlla un tag specifico di WDM.
Verifica il numero di un tag specifico di WDM, da .../data-management/DMConstants.h, con il tag effettivo all'inizio di un lettore TLV.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
true iff aReader.GetTag() produce un tag che corrisponde a uno dei formati 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 Se l'operazione è andata a buon fine. In caso contrario, restituisce un valore WEAVE_ERROR che indica l'impossibilità di uscire da un contenitore.
|
CloseList
WEAVE_ERROR CloseList( nl::Weave::TLV::TLVReader & aReader )
Interrompi la lettura di un percorso WDM o di un elenco di dati.
Questo metodo presuppone che l'elenco in questione sia l'elemento TLV di livello più alto e quindi passa kTLVType_Sructure a exitContainer().
Dettagli | |||
---|---|---|---|
Parametri |
|
||
Restituisce |
WEAVE_NO_ERROR Se l'operazione è andata a buon fine. In caso contrario, restituisce un valore WEAVE_ERROR che indica l'impossibilità di uscire da un contenitore.
|
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 intero.
Nota:codifica un percorso utilizzando il set di tag obsoleto accettato dal servizio prima della release 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_Ritirato). Quindi inserisce l'ID istanza con ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileInstance_Rifiutato). Si tratta di una delle versioni deprecate per la codifica di un percorso e le nuove progettazioni devono evitare di utilizzare questo formato.
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||
Restituisce |
WEAVE_NO_ERROR Se l'operazione è andata a buon fine. In caso contrario, restituisce un valore WEAVE_ERROR che indica l'impossibilità di formattare un determinato percorso.
|
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 di 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_Ritirato). Quindi inserisce l'ID istanza con ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileInstance_Rifiutato). Si tratta di una delle versioni deprecate per la codifica di un percorso e le nuove progettazioni devono evitare di utilizzare questo formato.
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||
Restituisce |
WEAVE_NO_ERROR Se l'operazione è andata a buon fine. In caso contrario, restituisce un valore WEAVE_ERROR che indica l'impossibilità di formattare un determinato percorso.
|
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 con profilo intero.
Nota:scrivi un percorso TLV del tipo utilizzato nella gestione dei dati, in cui, in particolare, inserisci una designazione del profilo all'inizio per consentire l'interpretazione degli elementi del percorso successivi. Questa versione del metodo utilizza un ID istanza con profilo intero.
Questo metodo inserisce l'ID istanza utilizzando ContextTag(kTag_WDMPathProfileInstance), che è la versione più recente per la codifica di un percorso.
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||
Restituisce |
WEAVE_NO_ERROR Se l'operazione è andata a buon fine. In caso contrario, restituisce un valore WEAVE_ERROR che indica l'impossibilità di formattare un determinato percorso.
|
EncodePath
WEAVE_ERROR EncodePath( TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint32_t aInstanceIdLen, const uint8_t *aInstanceId, uint32_t aPathLen, ... )
Codifica un percorso WDM con un ID istanza con array di byte.
Nota:scrivi un percorso TLV del tipo utilizzato nella gestione dei dati, in cui, in particolare, inserisci una designazione del profilo all'inizio per consentire l'interpretazione degli elementi del percorso successivi. Questa versione del metodo prende un ID istanza profilo array di byte e una lunghezza.
Questo metodo inserisce l'ID istanza utilizzando ContextTag(kTag_WDMPathProfileInstance), che è la versione più recente per la codifica di un percorso.
Dettagli | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||||
Restituisce |
WEAVE_NO_ERROR Se l'operazione è andata a buon fine. In caso contrario, restituisce un valore WEAVE_ERROR che indica l'impossibilità di formattare un determinato percorso.
|
EncodePath
WEAVE_ERROR EncodePath( TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const char *aInstanceId, uint32_t aPathLen, ... )
Codifica un percorso WDM con un ID istanza di stringa.
Nota:scrivi un percorso TLV del tipo utilizzato nella gestione dei dati, in cui, in particolare, inserisci una designazione del profilo all'inizio per consentire l'interpretazione degli elementi del percorso successivi. Questa versione del metodo utilizza un ID istanza del profilo stringa.
Questo metodo inserisce l'ID istanza utilizzando ContextTag(kTag_WDMPathProfileInstance), che è la versione più recente per la codifica di un percorso.
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||
Restituisce |
WEAVE_NO_ERROR Se l'operazione è andata a buon fine. In caso contrario, restituisce un valore WEAVE_ERROR che indica l'impossibilità di formattare un determinato percorso.
|
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 WDM. Nota che questo passa automaticamente un tipo di kTLVType_Array alla chiamata EndContainer() supponendo che chiuderemo sempre un elemento dell'elenco.
Dettagli | |||
---|---|---|---|
Parametri |
|
||
Restituisce |
WEAVE_NO_ERROR Se l'operazione è andata a buon fine. In caso contrario, restituisce un valore 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 dati.
Scrivi il valore TLV alla fine di un percorso WDM o di un elenco di dati. Inoltre, finalizza l'autore.
Dettagli | |||
---|---|---|---|
Parametri |
|
||
Restituisce |
WEAVE_NO_ERROR Se l'operazione è andata a buon fine. In caso contrario, restituisce un valore 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 dati.
Scrivi il valore TLV alla fine di un percorso WDM o di un elenco di dati. Inoltre, finalizza l'autore. In questo caso, l'oggetto ReferencedTLVData a cui viene scritto il TLV viene passato e modificato in modo da riflettere la quantità di dati scritti.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
WEAVE_NO_ERROR Se l'operazione è andata a buon fine. In caso contrario, restituisce un valore WEAVE_ERROR che indica l'impossibilità di terminare un container.
|
IsPublisherSpecific
bool IsPublisherSpecific( const TopicIdentifier & aTopicId )
Controlla se un ID argomento è specifico del publisher.
Dettagli | |||
---|---|---|---|
Parametri |
|
||
Restituisce |
true se l'ID argomento è specifico del publisher, false in caso contrario
|
OpenDataList
WEAVE_ERROR OpenDataList( ReferencedTLVData & aDataList, nl::Weave::TLV::TLVReader & aReader )
Inizia a leggere un elenco di dati.
Una volta aggiornato un lettore 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 ferma dopo l'inserimento del contenitore dell'elenco.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
WEAVE_NO_ERROR Se l'operazione è andata a buon fine. In caso contrario, restituisce un WEAVE_ERROR che indica un errore nell'apertura dell'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 di un elenco di dati.
Una volta posizionato un lettore 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 funziona correttamente, il lettore viene posizionato in corrispondenza dei dati dell'elemento dei dati e il lettore del percorso di ingresso/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.
Una volta aggiornato un lettore e un elenco di percorsi, inizia a leggere l'elenco e convalida i tag e i tipi inizialmente riscontrati nel processo. Se tutto funziona correttamente, il lettore si ferma dopo l'inserimento del contenitore dell'elenco.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
WEAVE_NO_ERROR in caso di operazione riuscita; In caso contrario, viene visualizzato un messaggio WEAVE_ERROR che indica un errore nell'apertura dell'elenco dei percorsi e/o convalida i tag e i tipi pertinenti.
|
PublisherSpecificTopicId
TopicIdentifier PublisherSpecificTopicId( void )
Genera da zero un ID argomento specifico del publisher.
Dettagli | |
---|---|
Restituisce |
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 Se l'operazione è andata a buon fine. In caso contrario, restituisce un valore 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 in un determinato oggetto ReferencedTLVData.
Scrivi il TLV per l'inizio di un elenco di dati WDM. In questo caso, supponiamo di scrivere l'elenco di dati per una struttura di dati TLV di riferimento. Si presume che il writer non sia inizializzato o che, in ogni caso, venga inizializzato in modo da puntare all'oggetto specificato.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
WEAVE_NO_ERROR Se l'operazione è andata a buon fine. In caso contrario, restituisce un valore 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 WDM.
Dettagli | |||
---|---|---|---|
Parametri |
|
||
Restituisce |
WEAVE_NO_ERROR Se l'operazione è andata a buon fine. In caso contrario, restituisce un valore 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 una ViewRequest().
Dettagli | |||
---|---|---|---|
Parametri |
|
||
Restituisce |
WEAVE_NO_ERROR Se l'operazione è andata a buon fine. In caso contrario, restituisce un valore 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 sia del tipo TLV previsto.
Confronta un determinato tipo TLV con il tipo di elemento nella parte superiore di un lettore TLV e restituisce un errore se non esistono corrispondenze.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
WEAVE_NO_ERROR se esiste una corrispondenza o 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 letto abbia il tag WDM previsto.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Restituisce |
WEAVE_NO_ERROR Se l'operazione è andata a buon fine. In caso contrario, WEAVE_ERROR_INVALID_TLV_TAG se il tag non corrisponde al numero di tag specificato quando interpretato come tag WDM.
|