Google is committed to advancing racial equity for Black communities. See how.
Эта страница переведена с помощью Cloud Translation API.
Switch to English

nl :: Плетение :: Профили: DataManagement_Current :: UpdateEncoder

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

Этот объект кодирует полезные данные WDM UpdateRequest и PartialUpdateRequest.

Резюме

Обратите внимание, что оба запроса имеют одинаковый формат; они различаются только типом сообщения, который выходит за рамки этого объекта.

Кодирование выполняется синхронно методом EncodeRequest. Единственный другой общедоступный метод - InsertInProgressUpdateItem, который вызывается SchemaEngine, когда ему нужно вернуть словарь в очередь.

Конструкторы и деструкторы

UpdateEncoder ()
~UpdateEncoder ()

Публичные функции

EncodeRequest ( Context & aContext)
Кодировать полезную нагрузку запроса обновления WDM.
InsertInProgressUpdateItem (const TraitPath & aItem)
Добавьте частный путь в список текущих путей, вставив его после того, который кодируется в данный момент.

Структуры

nl :: Weave :: Profiles :: DataManagement_Current :: UpdateEncoder :: Context

Эта структура содержит аргументы ввода-вывода для метода EncodeRequest.

Публичные функции

EncodeRequest

WEAVE_ERROR EncodeRequest(
  Context & aContext
)

Кодировать полезную нагрузку запроса обновления WDM.

См. UpdateEncoder :: Context . Длина данных PacketBuffer обновляется только в случае успеха, но содержимое буфера не сохраняется.

Подробности
Возвращаемые значения
WEAVE_NO_ERROR
По крайней мере один DataElement был закодирован в DataList полезной нагрузки.
WEAVE_ERROR_BUFFER_TOO_SMALL
Первый DataElement не помещается в полезную нагрузку.
WEAVE_ERROR_INVALID_ARGUMENT
aContext инициализирован недопустимыми значениями.
other
Другие ошибки от объектов более низкого уровня (TLVWriter, SchemaEngine и т. Д.).

InsertInProgressUpdateItem

WEAVE_ERROR InsertInProgressUpdateItem(
  const TraitPath & aItem
)

Добавьте частный путь в список текущих путей, вставив его после того, который кодируется в данный момент.

Этот метод должен вызываться SchemaEngine при обходе дерева схемы и необходимости возвращать словари в список.

Подробности
Параметры
[in] aItem
TraitPath для вставки в кодируемый список.
Возвращаемые значения
WEAVE_NO_ERROR
Элемент был успешно вставлен.
WEAVE_NO_MEMORY
В TraitPathStore не было места для вставки элемента.

UpdateEncoder

 UpdateEncoder()

~ UpdateEncoder

 ~UpdateEncoder()