En Google, luchamos por la equidad racial de la comunidad negra. Más información

nl :: Tejido:: Perfiles: DataManagement_Current :: UpdateEncoder

#include <src/lib/profiles/data-management/Current/UpdateEncoder.h>

Este objeto codifica WDM UpdateRequest y PartialUpdateRequest cargas útiles.

Resumen

Tenga en cuenta que ambas solicitudes tienen el mismo formato; se diferencian únicamente por el tipo de mensaje, que está fuera del alcance de este objeto.

La codificación se realiza de forma sincrónica mediante el método EncodeRequest. El único otro método público es InsertInProgressUpdateItem, al que SchemaEngine llama cuando necesita enviar un diccionario a la cola.

Constructores y Destructores

UpdateEncoder ()
~UpdateEncoder ()

Funciones publicas

EncodeRequest ( Context & aContext)
Codifique una carga útil de solicitud de actualización de WDM.
InsertInProgressUpdateItem (const TraitPath & aItem)
Agregue una ruta privada en la lista de rutas en progreso, insertándola después de la que se está codificando en ese momento.

Estructuras

nl :: Armadura :: Perfiles :: :: DataManagement_Current UpdateEncoder :: Contexto

Esta estructura contiene los argumentos de E / S del método EncodeRequest.

Funciones publicas

EncodeRequest

WEAVE_ERROR EncodeRequest(
  Context & aContext
)

Codifique una carga útil de solicitud de actualización de WDM.

Ver UpdateEncoder :: Contexto . La longitud de los datos del PacketBuffer se actualiza solo en caso de éxito, pero el contenido del búfer no se conserva.

Detalles
Valores devueltos
WEAVE_NO_ERROR
Al menos un DataElement se codifica en DataList de la carga útil.
WEAVE_ERROR_BUFFER_TOO_SMALL
La primera DataElement no podía caber en la carga útil.
WEAVE_ERROR_INVALID_ARGUMENT
aContext se inicializó con valores no válidos.
other
Otros errores de objetos de nivel inferior (TLVWriter, SchemaEngine, etc.).

InsertInProgressUpdateItem

WEAVE_ERROR InsertInProgressUpdateItem(
  const TraitPath & aItem
)

Agregue una ruta privada en la lista de rutas en progreso, insertándola después de la que se está codificando en ese momento.

Este método está destinado a ser llamado por el SchemaEngine ya que atraviesa el árbol del esquema y necesita enviar los diccionarios a la lista.

Detalles
Parámetros
[in] aItem
El TraitPath para insertar en la lista que se codifica.
Valores devueltos
WEAVE_NO_ERROR
El artículo se insertó correctamente.
WEAVE_NO_MEMORY
No había espacio en el TraitPathStore para insertar el elemento.

UpdateEncoder

 UpdateEncoder()

~ UpdateEncoder

 ~UpdateEncoder()