У него есть два основных понятия:
Транзакция принимается контрактами каждого состояния ввода и вывода.
Это вы можете визуализировать следующим образом. Предположим, у вас есть StateA, который обрабатывается ContractA и StateB, который обрабатывается ContractB.
Теперь предположим, что вы создаете транзакцию с помощью CommandA, и в вашей транзакции есть состояния, то есть StateA и StateB.
Чем обязательно, что у вас есть CommandA как в контрактах, так и внутри этой команды вы проверяете транзакцию и ее состояние. Поэтому убедитесь, что каждый контракт со всеми состояниями ввода и вывода принимает транзакцию.
Транзакция имеет все необходимые подписи
Это то, что обрабатывается автоматически почти во всех сценариях. Вы можете использовать подпоток collectSignature
, а затем verifyRequiredSignatures
, чтобы убедиться, что в транзакции есть все необходимые подписанты. Вы можете найти более подробную информацию по этому адресу: CollectSignaturesFlow и Flow поваренная книга
Ход цепочки транзакций обрабатывается автоматически, когда узел или проверяющий нотариус проверяет транзакцию.