Как написать сценарий для создания новых участников и ресурсов в hyperledger composer? - PullRequest
0 голосов
/ 16 сентября 2018

Я пытаюсь создать новых участников и ресурсов в hyperledger composer, написав сценарии. Пожалуйста, помогите мне сделать это. Если это невозможно, пожалуйста, дайте мне понять причину. Пожалуйста, предоставьте также пример кода.

Спасибо

1 Ответ

0 голосов
/ 17 сентября 2018

Краткая справка. Участники и активы - это "ресурсы", которые вы моделируете, используя Язык моделирования Composer .Другими ресурсами являются Транзакции и События.

В вашем случае, когда вы хотите создать сценарии для добавления этих ресурсов, вам нужно будет использовать функции процессора транзакций .В этих функциях вы будете использовать Registry и factory для создания участников и активов.Кроме того, помните, что перед созданием функции процессора транзакций вам сначала необходимо создать ресурс транзакции.

Пример кода ниже:

Скажем, у нас есть участник Пользователь .И для создания этого участника мы используем транзакцию CreateUser .Таким образом, ваш файл модели будет:

namespace org.network.participants

participant User identified by userId {
  o String userId
  o String name
  o String email
}

transaction CreateUser {
  o User userDetails
}

И ваш файл сценария будет:

/**
 * 
 * @param {org.network.participants.CreateUser} transactionRequest 
 * @transaction
 */
async function createUser(transactionRequest) {

    try {
        let userDetails = transactionRequest.userDetails;
        let userRegistry = await getParticipantRegistry('org.network.participants.User');
        let factory = await getFactory();
        let user = await factory.newResource('org.network.participants', 'User', userDetails.userId);

        user.name = userDetails.name;
        user.email = userDetails.email;

        return userRegistry.add(user);
    } catch(exception) {
        throw new Error(exception);
    }
}

Вы можете обратиться к официальной документации композитора для получения дополнительной информации.

...