[区块链] 如何在Corda上写一个派发股息的Dapp

對應的 Github項目


前言

在CSDN上首次写文章。我经常在世界各地为不同的开发者做有关Corda的培训,发觉他们对新功能代码库 TokenSDK很有兴趣,所以决定写一个相关的样本Dapp作为大家的参考。

这是一个记载了一些我创建此示例CorDapp的过程。基本的Corda的概念我会先跳过,但一些关键内容我会解释一下。

如果您还没有运行示例,可以从这个Github项目中下载并运行。
样本有六个重要的Flow,模拟了股票的发行,转移以至派息时的支付。

架构

这个博客介绍了我创建此示例CorDapp的过程。 尽管我不会介绍所有Corda的基本概念,但我将解释一些关键内容。
样品概述
如果您还没有运行示例,请随时从Github项目中下载并运行建议的示例。

样本有六个重要流。 它们模拟股票的发行,转移以及最终分配方式以及股息的支付方式。

1. CreateStock 发行股票

要发行新的股票,首先要暸解EvolvableToken,因为我接下来创建的StockState 将继承这个class,而它的特性是能够独立的更新代币(Token)的特性,而不影响代币的持有人。
而要创造StockState,我们只需使用Token-SDK内建的CreateEvolvableTokenFlow。 这个StockState包含股票信息,例如股票名称,股票代码,宣布股息等。您可以扩展它以添加更多信息,例如年度报告等等。

Observer 观察员

在实际发行股票时,应通知证监会等监管机构。 在Corda,我们将这些监管机构视为观察员,他们只是记录State的变化,无需签署交易。 做法就像以下这一行代码,提供的observers参数将只记录StockState的创造。

subFlow(new CreateEvolvableTokens(stockState,observers));

在TokenSDK中,大多数内建Flow都带有一个observer参数,开发人员不必自己特意写一个观察员用的flow,非常方便。

2. MoveStock 转移股票

MoveStock这步很直白简单。在TokenSDK中,把Token从一方转移到另一方就像是一行的代码那麽容易。 我们不仅可以将股票转让给其他人,还可以交换其他一些资产,例如金钱。 我们稍后的篇幅再细说。

subFlow(new MoveFungibleTokens(amount, recipient));

3. AnnounceDividend 派发股息

AnnounceDividend 构建的 Transaction
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值