【问题标题】:Corda Transaction Time get from vault QueryCorda Transaction Time 从 Vault Query 中获取
【发布时间】:2018-10-01 15:32:05
【问题描述】:

是否可以通过 vault query 获取在 vault_state 中可以看到的交易消耗时间?

【问题讨论】:

    标签: corda


    【解决方案1】:

    是的。您可以使用查询结果的statesMetadata 字段找到状态消耗的时间。

    在流中:

    @Suspendable
    override fun call() {
        val results = serviceHub.vaultService.queryBy(ContractState::class.java)
        val statesAndMetadata = results.states.zip(results.statesMetadata)
        statesAndMetadata.forEach { (stateAndRef, metadata) ->
            val consumedTime = metadata.consumedTime
        }
    }
    

    在 RPC 客户端中:

    fun main(args: Array<String>) {
        require(args.size == 1) { "Usage: TemplateClient <node address>" }
        val nodeAddress = parse(args[0])
        val client = CordaRPCClient(nodeAddress)
    
        // Can be amended in the com.template.MainKt file.
        val cordaRPCOps = client.start("user1", "test").proxy
    
        val results = cordaRPCOps.vaultQueryBy<ContractState>()
        val statesAndMetadata = results.states.zip(results.statesMetadata)
        statesAndMetadata.forEach { (stateAndRef, metadata) ->
            val consumedTime = metadata.consumedTime
        }
    }
    

    【讨论】:

    • Thanx 我希望在 UI 时间显示消耗...将尝试相同
    猜你喜欢
    • 1970-01-01
    • 2021-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-27
    • 2011-05-23
    相关资源
    最近更新 更多