Corda-如何检查对方节点是否正在运行?

时间:2019-05-27 13:00:57

标签: corda

我已经在Corda平台的发行版v1上使用“ Yo!CorDapp”示例(https://github.com/corda/spring-observable-stream)构建了一个CorDapp。

CorDapp具有四个节点-控制器节点(提供网络映射服务和验证公证服务),“节点A”,“节点B”和“节点C”。以下是应用程序中定义的流程-

流程1:“节点A”向“节点B”发送交易请求。还通知“节点C”。

流程2:“节点B”批准交易请求,对其自签名,从A获得签名并结束交易。还通知“节点C”。

我希望“节点A”检查“节点B”是否正在运行,以便它可以决定启动流“流1”。

这可能吗?如果是,请详细说明。

1 个答案:

答案 0 :(得分:0)

您应该能够检查网络地图缓存:

serviceHub.networkMapCache.allNodes.map { node -> node.legalIdentities.first() }

检查您要与之通信的一方是否在该列表中。

也就是说,交易对手节点是否正常并不重要。当交易对手恢复时,Corda将处理向节点的交付。