нл:: Переплетение:: Профили:: DataManagement_Legacy:: База данных профиля:: ПрофильДанные

Это абстрактный класс.

#include <src/lib/profiles/data-management/Legacy/ProfileDatabase.h>

Абстрактный вспомогательный внутренний класс ProfileData .

Краткое содержание

Разработчики подкласса ProfileDatabase также должны реализовать подклассы этого вспомогательного внутреннего класса. Функция объектов ProfileData заключается в предоставлении перехватчиков, с помощью которых конкретные данные могут быть сохранены, учитывая их представление в виде TLV , и извлечены в виде представления TLV по списку путей, закодированному в TLV.

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

ProfileData (void)
Конструктор по умолчанию для ProfileData .
~ProfileData (void)
Деструктор ProfileData .

Публичные атрибуты

mVersion
uint64_t
Версия данных профиля.

Общественные функции

Retrieve ( nl::Weave::TLV::TLVReader & aPathReader, nl::Weave::TLV::TLVWriter & aDataWriter)=0
virtual WEAVE_ERROR
Запишите элемент данных с учетом остаточного пути WDM.
Store ( nl::Weave::TLV::TLVReader & aPathReader, uint64_t aVersion, nl::Weave::TLV::TLVReader & aDataReader)
virtual WEAVE_ERROR
Сохраните читаемый элемент списка данных.
StoreItem (const uint64_t & aTag, nl::Weave::TLV::TLVReader & aDataReader)=0
virtual WEAVE_ERROR
Сохраните элемент данных на основе его тега.

Публичные атрибуты

мВерсия

uint64_t mVersion

Версия данных профиля.

Версия, указанная здесь в объекте ProfileData , применяется ко всему набору данных профиля для конкретного экземпляра.

Общественные функции

ПрофильДанные

 ProfileData(
  void
)

Конструктор по умолчанию для ProfileData .

Инициализируйте новый элемент ProfileData , установив для его версии значение 0.

Забрать

virtual WEAVE_ERROR Retrieve(
  nl::Weave::TLV::TLVReader & aPathReader,
  nl::Weave::TLV::TLVWriter & aDataWriter
)=0

Запишите элемент данных с учетом остаточного пути WDM.

Разработчики подкласса ProfileDatabase должны предоставить конкретную реализацию этого метода в каждом случае, когда отдельные элементы объекта подкласса ProfileData доступны по определенным тегам.

Подробности
Параметры
[in] aPathReader
Ссылка на устройство чтения TLV , расположенное в пути WDM после информации профиля, т. е. в «остаточных» элементах пути, если таковые имеются.
[in] aDataWriter
Ссылка на модуль записи TLV , используемый для записи данных, указанных в остаточном пути.
Возврат
WEAVE_NO_ERROR В случае успеха. В противном случае верните WEAVE_ERROR , отражающий невозможность распознать остаточный тег или записать соответствующие данные.

Магазин

virtual WEAVE_ERROR Store(
  nl::Weave::TLV::TLVReader & aPathReader,
  uint64_t aVersion,
  nl::Weave::TLV::TLVReader & aDataReader
)

Сохраните читаемый элемент списка данных.

Этот виртуальный метод используется для хранения определенного элемента списка данных в объекте конкретного подкласса ProfileData . Реализация здесь, в суперклассе, может использоваться, если объект простой и «неглубокий», имеющий только пути длиной в один элемент. Для более сложной схемы разработчики должны переопределить этот метод.

Подробности
Параметры
[in] aPathReader
Ссылка на средство чтения TLV , расположенное в компоненте пути элемента списка данных.
[in] aVersion
Компонент 64-битной версии элемента списка данных.
[in] aDataReader
Ссылка на средство чтения TLV , расположенное в компоненте данных элемента списка данных.
Возврат
WEAVE_NO_ERROR В случае успеха. В противном случае верните WEAVE_ERROR, указывающий на невозможность сохранить интересующие данные.

StoreItem

virtual WEAVE_ERROR StoreItem(
  const uint64_t & aTag,
  nl::Weave::TLV::TLVReader & aDataReader
)=0

Сохраните элемент данных на основе его тега.

Подробности
Параметры
[in] aTag
Ссылка на полный 64-битный тег TLV , под которым должны храниться данные.
[in] aDataReader
Считыватель TLV , расположенный у элемента данных, который необходимо сохранить.
Возврат
WEAVE_NO_ERROR в случае успеха, в противном случае возвращается WEAVE_ERROR , отражающий неспособность распознать тег или сохранить данные.

~Данные профиля

virtual  ~ProfileData(
  void
)

Деструктор ProfileData .

Как и конструктор, он просто очищает версию данных до 0.