このチュートリアルでは、ノードが他の当事者にボールトを照会し、必要な結果を与えるように要求することができることが記載されています。このロジックをフローに統合するために使用できるAPIはありますか?また、カウンターパーティーにカウンターパーティーからの入力を収集し、累積結果を返すよう依頼することも可能です。もしあれば、サンプルコードを共有してください。ありがとう。Corda:ネットワーク内の他の当事者からの入力を収集する
0
A
答えて
1
特殊なAPIはありません。標準FlowSession.send
/FlowSession.receive
/FlowSession.sendAndReceive
の呼び出しを使用するだけです。
ただし、相手方(通常はSignedTransaction
またはStateAndRef
のいずれか)からのデータを受信すると、あなたはそれはトランザクションの有効なシーケンスを介して作成されたことを確認できるように、ResolveTransactionsFlow
を使用して、その依存関係のチェーンを解決することを確認してください。
SendTransactionFlow
/ReceiveTransactionFlow
ペアがあり、トランザクションの受信、アンラッピング、および依存関係の解決プロセスを自動化します。ここ
は相手方によって送信されたStateAndRef<ContractState>
を受信するノードの一例は次のとおり
@InitiatingFlow
@StartableByRPC
class Initiator(private val counterparty: Party) :
FlowLogic<StateAndRef<ContractState>>() {
@Suspendable
override fun call(): StateAndRef<ContractState> {
val counterpartySession = initiateFlow(counterparty)
// Our flow will suspend and wait for a StateAndRef from the counterparty.
val untrustedData = counterpartySession.receive<StateAndRef<ContractState>>()
// Data received off the wire is considered untrustworthy, and must be unwrapped.
val stateAndRef = untrustedData.unwrap { stateAndRef ->
// We resolve the chain of transactions that generated this StateAndRef.
subFlow(ResolveTransactionsFlow(setOf(stateAndRef.ref.txhash), counterpartySession))
// TODO: More checking of what we've received.
stateAndRef
}
return stateAndRef
}
}
@InitiatedBy(Initiator::class)
class Responder(val counterpartySession: FlowSession) : FlowLogic<Unit>() {
@Suspendable
override fun call() {
// We extract the first StateAndRef in our vault...
val stateAndRef = serviceHub.vaultService.queryBy(ContractState::class.java).states.first()
// ...and send it to our counterparty.
counterpartySession.send(stateAndRef)
}
}
関連する問題
- 1. foreachループ内のユーザーからの入力の収集(HTMLとpHpの使用)
- 2. )(train_minibatchからの出力を収集
- 3. 他の当事者向けにiOSアプリを公開する
- 4. VSコードでユーザーから入力を収集する方法Java
- 5. キーボード入力をループ内でC++で収集する方法
- 6. いくつかの入力ボックスからデータを収集する方法は?
- 7. 管理者クラスの事前入力フォーム
- 8. ユーザー入力から情報を収集して他の場所に適用する方法
- 9. Googleタグマネージャは他のドメインからデータを収集しますか?
- 10. ASP.NETウィザードの動的入力とステップから値を収集する方法
- 11. エメット:他の事業者が
- 12. Djangoでは、ユーザーの入力を収集する方法は?
- 13. 他のホストからの入力にデータを入力する
- 14. PowerApp内のボタンからデータを収集する方法
- 15. 訪問者情報収集
- 16. Firebaseからのデータ収集
- 17. 他の開いているタブからユーザー固有のデータを収集する
- 18. インターネットから収集した画像を収集する
- 19. C#ラムダの割り当てと収集
- 20. ウェブサイトのボタン出力フォームからデータを収集
- 21. は、リスト内の他のすべてのベクトルを収集し、1つのベクターに
- 22. データ収集アプリケーションからのデータベース内のデバイスIDのロギング
- 23. 他のネットワークからサーブレットページにアクセスする
- 24. PHP - 管理者の編集記事ページ
- 25. MPIルートプロセスからの収集のみを集める
- 26. チェックボックスリストからデータを収集
- 27. sympy collect_constで有権者を収集
- 28. 複数のソースからデータを収集
- 29. ユーザー入力を収集してフィードバックを与える方法
- 30. ビデオデータからのRGBデータの収集