我正在使用Corda 3.3。并监听Cash.State的变化,
val (snapshot, updates) = proxy.vaultTrack(Cash.State::class.java)
snapshot.states.forEach { logger.info("listen to inital pdates...."+it.toString()) }
updates.subscribe { update ->
if(update.produced.size>0)
update.produced.forEach { logger.info("listen to new produced updates ....."+it.toString()) }
if(update.consumed.size>0)
update.produced.forEach { logger.info("listen to new consumed updates ....."+it.toString()) }
}
其中代理是rpc连接。有趣的是,我也可以看到除Cash.State之外的其他状态对象。认为proxy.vaultTrack(Cash.State :: class.java)将仅限制监听Cash.State。