如何在 Hyperledger Fabric 中描述智能合约的通用输入?

How to describe a generic input to a smart contract in Hyperledger Fabric?

我正在使用 Hyperledger Composer 开发 POC。我有一项资产需要通用。我解释;在金融领域,有不同类型的合同,如远期、期权和许多其他类型的灵活合同。我需要在我的代码中对其进行建模。所以我决定将合同视为一种资产。当资产被调用时,该资产的基础商品将如何交易取决于调用它们的合约类型。换句话说,智能合约的输入是通用的,行为取决于合约的类型(请记住,合约是一种资产,我这里指的不是智能合约)。

为了达到这个目的,我需要多态性,以便提取的合约(资产)本身决定交易的方式。我想知道是否可以在智能合约中使用通用输入?我们在 Hyperledger Fabric 中有多态性吗?如果答案是肯定的,请指导我如何做,我将不胜感激?如果它不支持多态性,那怎么可能实现呢?您是否建议使用任何架构来克服此限制?

感谢任何帮助。

感谢您的时间和关注。

从 Hyperledger Composer 的角度来看,您将按照您在模型文件中描述的方式对您的通用合约资产进行建模。

请注意,您在 H/L Composer 中定义的整个模型也是可执行智能合约(以及交易逻辑、ACL 规则、查询等)或业务网络的一部分,仅供参考。您对智能合约的输入 is/are 调用它的交易(例如 PullContract)和 'how' 合约 'pulled' 取决于输入。

智能合约交易逻辑 (javascript) 被打包为安装在远程对等点(本机 NodeJS 链代码)上的业务网络的一部分 - 无论您的区块链网络中有多少组织。