Ledger API - это набор служб, предоставляемых через gRPC , который использует Буферы протокола в качестве собственного языка определения интерфейса.
Привязки, задокументированные как часть SDK, строятся поверх кода, сгенерированного из gRPC, чтобы предложить больше функций и более идиоматического API.
Вы все еще можете использовать gRPC напрямую для генерации кода, необходимого для взаимодействия с API Ledger.,Начиная с gRPC 1.15.1, поддерживаемые языки (и / или платформы) включают:
- C ++
- Java
- Python
- Go
- Ruby
- C #
- Node.js
- Android Java
- Objective-C
- PHP
- Dart
Ниже приведены первые общие для всех языков шаги по созданию примера проекта.Если у вас уже есть проект и вы хотите добавить привязки на языке, для которого привязки недоступны, перейдите к шагу 4.
Создайте новый каталог для вашего проекта и cd
в него
mkdir daml-project && cd daml-project
Создайте каталог для ваших моделей DAML и поместите в него модель.Пока подойдет пустая модель (вы можете поставить модель по вашему выбору позже).
mkdir daml && echo -e "daml 1.2\nmodule Empty where" > daml/Empty.daml
Создайте дескриптор проекта (файл da.yaml
) со следующим содержимым:
project:
sdk-version: 0.11.3
name: daml-project
source: daml/Empty.daml
version: 2
Выполните следующую команду длядобавьте определения GRPC API Ledger в ваш проект:
da add ledger-api-protos
На этом этапе в ваш проект должен быть добавлен каталог protobuf
.Вы можете использовать эти файлы для создания привязок к Ledger API на одном из языков, поддерживаемых gRPC.
Процедура создания кода для вашего целевого языка описана в официальной документации gRPC .