Таблицы реализованы с использованием протокольных буферов. Вы можете посмотреть файл table.pb .иди. Этот файл создается автоматически с использованием определений прото-сообщений в таблица.прото .
Кроме того, API чейнкода предоставляет такие функции, как CreateTable
, GetTable
, DeleteTable
, GetRow
, GetRows
, InsertRow
, которые вы можете использовать в своем чейнкоде.
Такие функции, как CreateTable
, InsertRow
, DeleteTable
, которые должны выполнять внутреннюю модификацию данных, используют PutState
API для записи значений байтов в бухгалтерскую книгу. PutState
упорядочивает структуру, определенную в файле table.pb.go
, в байты и сохраняет в бухгалтерской книге.
Точно так же такие функции, как GetRow
, GetRows
, GetTable
, которые должны запрашивать данные, внутренне используют GetState
API для чтения значений байтов из леджера. GetState
API находит значение в реестре в байтах, а затем преобразует байтовое значение в структуры.
По сути, вы можете взаимодействовать со структурами Go, не заботясь о том, как хранится таблица внутри.
person
Sadanand Upase
schedule
20.11.2016