nl :: Tejido:: Perfiles: DataManagement_Current :: TraitUpdatableDataSink
Resumen
Herencia
Hereda de:nl :: Weave :: Perfiles :: DataManagement_Current :: TraitDataSink
nl :: Weave :: Profiles :: DataManagement_Current :: TraitSchemaEngine :: IGetDataDelegate
Constructores y Destructores | |
---|---|
TraitUpdatableDataSink (const TraitSchemaEngine *aEngine) |
Funciones publicas | |
---|---|
ClearUpdated ( SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle) | |
GetData ( PropertyPathHandle aHandle, uint64_t aTagToWrite,nl::Weave::TLV::TLVWriter & aWriter, bool & aIsNull, bool & aIsPresent) __OVERRIDE | virtual WEAVE_ERROR Dado un mango ruta a un nodo, un TLV escritor y booleanos que indican si el valor es nulo o no está presente, obtener los datos de la fuente rasgo que va a construir una notificación. |
GetSubscriptionClient () __OVERRIDE | virtual SubscriptionClient * |
GetUpdateEncoder () __OVERRIDE | virtual UpdateEncoder * |
IsUpdatableDataSink (void) __OVERRIDE | virtual bool |
Lock ( SubscriptionClient *apSubClient) | void |
ReadData (TraitDataHandle aTraitDataHandle, PropertyPathHandle aHandle, uint64_t aTagToWrite,TLV::TLVWriter & aWriter, PropertyPathHandle & aPropertyPathHandleOfDictItemToStartFrom) | |
SetSubscriptionClient ( SubscriptionClient *apSubClient) __OVERRIDE | virtual WEAVE_ERROR |
SetUpdateEncoder ( UpdateEncoder *apEncoder) __OVERRIDE | virtual WEAVE_ERROR |
SetUpdated ( SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle, bool aIsConditional) | Declara que el PropertyPathHandle dado tiene modificaciones locales. |
Unlock ( SubscriptionClient *apSubClient) | void |
Funciones publicas
ClearUpdated
WEAVE_ERROR ClearUpdated( SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle )
Obtener datos
virtual WEAVE_ERROR GetData( PropertyPathHandle aHandle, uint64_t aTagToWrite, nl::Weave::TLV::TLVWriter & aWriter, bool & aIsNull, bool & aIsPresent ) __OVERRIDE
Dado un mango ruta a un nodo, un TLV escritor y booleanos que indican si el valor es nulo o no está presente, obtener los datos de la fuente rasgo que va a construir una notificación.
Si el identificador de ruta no es un nodo hoja, TDM manejará la escritura de valores en el escritor (como abrir contenedores, anular la estructura, etc.). Si un nodo no hoja es nulo o no está presente, TDM no llamará a GetData para sus hijos.
Esta función solo se llamará para identificadores que aceptan valores NULL, opcionales, efímeros u hojas. La expectativa es que cualquier rasgo con identificadores que tengan esas opciones habilitadas implemente la lógica apropiada para poblar aIsNull y aIsPresent.
Detalles | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
| ||||||||||
Valores devueltos |
|
GetSubscriptionClient
virtual SubscriptionClient * GetSubscriptionClient() __OVERRIDE
GetUpdateEncoder
virtual UpdateEncoder * GetUpdateEncoder() __OVERRIDE
IsUpdatableDataSink
virtual bool IsUpdatableDataSink( void ) __OVERRIDE
Cerrar con llave
void Lock( SubscriptionClient *apSubClient )
ReadData
WEAVE_ERROR ReadData( TraitDataHandle aTraitDataHandle, PropertyPathHandle aHandle, uint64_t aTagToWrite, TLV::TLVWriter & aWriter, PropertyPathHandle & aPropertyPathHandleOfDictItemToStartFrom )
SetSubscriptionClient
virtual WEAVE_ERROR SetSubscriptionClient( SubscriptionClient *apSubClient ) __OVERRIDE
SetUpdateEncoder
virtual WEAVE_ERROR SetUpdateEncoder( UpdateEncoder *apEncoder ) __OVERRIDE
SetUpdated
WEAVE_ERROR SetUpdated( SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle, bool aIsConditional )
Declara que el PropertyPathHandle dado tiene modificaciones locales.
El NotificationEngine no anulará el mango y sus descendientes hasta la petición de actualización ha sido procesado. La aplicación recibirá devoluciones de llamada kEvent_OnUpdateComplete para este identificador o para uno de sus ancestros con el resultado de la operación de actualización. La modificación puede ser condicional o no. Las actualizaciones de datos condicionales se perderán si la copia local de la instancia del rasgo ya no está sincronizada con la del editor porque fue modificada por el propio editor o por otro cliente. Las mutaciones condicionales e incondicionales no se admiten al mismo tiempo en la misma instancia de rasgo.
Detalles | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
| ||||||||||||
Valores devueltos |
|
TraitUpdatableDataSink
TraitUpdatableDataSink( const TraitSchemaEngine *aEngine )
desbloquear
void Unlock( SubscriptionClient *apSubClient )