Как повторно проверить все транзакции на узле Corda - PullRequest
0 голосов
/ 21 февраля 2020

Мы используем сеть Corda Open Source 4.3 с несколькими узлами. Один из узлов является узлом-наблюдателем, куда все транзакции отправляются со всех узлов.

Есть ли способ в любой момент времени выполнить проверку / проверку всех транзакций, доступных на узле-наблюдателе? Или это может быть сделано при проверке нотариуса?

Я понимаю, что они могут быть проверены после их получения, но меня интересует рекурсивная проверка по требованию.

1 Ответ

1 голос
/ 23 февраля 2020

Вы можете использовать TransactionVerifierService для проверки LedgerTransaction в потоке.

Во-первых, вам потребуется список всех доступных транзакций с узлом. Вы можете получить список, используя следующий код:

getServiceHub().getValidatedTransactions().track().getSnapshot()

Это вернет список SignedTransaction.

Чтобы проверить это с помощью TransactionVerifierService, SignedTransaction необходимо преобразовать в LedgerTransaction. Это можно сделать, используя следующий код:

signedTransaction.toLedgerTransaction(getServiceHub());

Как только вы получите LedgerTransaction, используйте TransactionVerifierService для подтверждения транзакции:

getServiceHub().getTransactionVerifierService().verify(ledgerTransaction);

Надеюсь, это поможет!

...