使用 run 命令的 Corda CRaSH shell 的语法是什么?



我正在尝试通过 Corda CRaSH 外壳检查已消耗和未消耗的现金状态。从文档(https://docs.corda.net/releases/release-V2.0/shell.html?highlight=crash%20shell(中,它说可以使用shell中的run命令调用RPC。有没有比 YAML 链接更好的指南?如何通过外壳调用已用和未用的现金状态?

非常感谢

语法记录在此处:https://docs.corda.net/shell.html#querying-the-vault。您可以通过 shell 查询节点的保管库以获取现金状态,如下所示:

run vaultQuery contractStateType: net.corda.finance.contracts.asset.Cash$State

但是,这默认为仅返回未使用的状态。理论上,您可以使用以下语法查询已使用和未使用的状态:

run vaultQueryByCriteria 
    criteria: { status: net.corda.core.node.services.Vault.StateStatus.ALL }, 
    contractStateType: net.corda.finance.contracts.asset.Cash$State

但是,criteria参数的类型是 QueryCriteria ,这是一个抽象类。无法通过 shell 指定要使用具体的子类VaultQueryCriteria。因此,您得到以下错误:

无法解析为命令:无法构造net.corda.core.node.services.vault.QueryCriteria的实例(不存在创建者,如默认构造(:抽象类型要么需要映射到具体类型,要么具有自定义反序列化程序,要么包含其他类型信息

最新更新