En Google, luchamos por la equidad racial de la comunidad negra. Más información
Se usó la API de Cloud Translation para traducir esta página.
Switch to English

nl :: Tejido:: Perfiles: DataManagement_Current :: TraitUpdatableDataSink

Resumen

Herencia

Hereda de:
  nl :: Weave :: Profiles :: 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 identificador de ruta a un nodo, un escritor de TLV y valores booleanos que indiquen si el valor es nulo o no está presente, obtenga los datos de la fuente del rasgo que generará una notificación.
GetSubscriptionClient () __OVERRIDE
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 identificador de ruta a un nodo, un escritor de TLV y valores booleanos que indiquen si el valor es nulo o no está presente, obtenga los datos de la fuente del rasgo que generará 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 los 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
[in] aHandle
PropertyPathHandle en cuestión.
[in] aTagToWrite
La etiqueta para escribir para el aHandle.
[in,out] aWriter
El escritor en el que escribir elementos TLV .
[out] aIsNull
¿Está anulado un mango? Si es así, TDM escribirá un elemento nulo. Si aHandle no es una hoja, TDM omitirá sus hijos.
[out] aIsPresent
¿Está presente un mango? Si no y si aHandle no es una hoja, TDM saltará la ruta y sus hijos.
Valores devueltos
WEAVE_NO_ERROR
Sobre el éxito.
other
No pude recuperar datos y escribirlos en el escritor.

GetSubscriptionClient

virtual SubscriptionClient * GetSubscriptionClient() __OVERRIDE

GetUpdateEncoder

virtual UpdateEncoder * GetUpdateEncoder() __OVERRIDE

IsUpdatableDataSink

virtual bool IsUpdatableDataSink(
  void
) __OVERRIDE

Bloquear

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.

NotificationEngine no anulará el identificador y sus descendientes hasta que se haya procesado la solicitud de actualización. 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
[in] apSubClient
Un puntero al SubscriptionClient que administra este receptor.
[in] aPropertyHandle
Cualquier PropertyPathHandle válido para esta instancia de Trait.
[in] aIsConditional
Verdadero para una actualización condicional; falso de lo contrario.
Valores devueltos
WEAVE_NO_ERROR
si el identificador de propiedad se agregó con éxito al conjunto de propiedades que se enviarán al propietario del rasgo.
WEAVE_ERROR_INVALID_ARGUMENT
si el identificador o el puntero de SubscriptionClient no son válidos.
WEAVE_ERROR_WDM_INCONSISTENT_CONDITIONALITY
si la instancia de rasgo ya se está actualizando con la condicionalidad opuesta.
WEAVE_ERROR_WDM_LOCAL_DATA_INCONSISTENT
si aIsConditional es verdadero pero la instancia del rasgo no tiene una versión válida.
WEAVE_ERROR_WDM_PATH_STORE_FULL
si no hay memoria para almacenar la ruta.
Other
Códigos WEAVE_ERROR dependiendo de la falla.

TraitUpdatableDataSink

 TraitUpdatableDataSink(
  const TraitSchemaEngine *aEngine
)

desbloquear

void Unlock(
  SubscriptionClient *apSubClient
)