首页 > 解决方案 > 有没有办法通知缔约方流程已经完成?

问题描述

以 Corda 文档(见这里)中描述的流程为例,Bob 如何在不轮询自己的保管库的情况下收到他刚刚签署的交易已经完成的通知?是否存在特定的回调?

我需要在 Bob 节点上运行的 CorDapp 与另一个系统实时通信事务的状态

非常感谢

标签: corda

解决方案


有两种方法可以实现这一目标:

1. 使用客户端订阅更新

cordaRPCOPS.vaultTrack(<YourState>.class).getUpdates().subscribe( update -> {
            update.getProduced().forEach(stateAndRef -> {
                // Action to be Performed on State Update
            });
        });

2. 使用 CordaService 订阅更新:

getServiceHub().getVaultService().trackBy(<YourState>.class).getUpdates().subscribe( update -> {
    update.getProduced().forEach(stateAndRef -> {
        // Action to be Performed on State Update
    });
});

推荐阅读