fabric 智能合约做模块化开发

序言

fabric1.0 开发chaincode的例子中一个chaincode都是由一个go文件组成,当做模块化开发时总不能多个人使用同一个go文件吧?

仔细研究了fabric1.0中的examples\chaincode\go\utxo 的例子,是可以是实现 一个chaincode由多个go文件组成的。

仿照utxo的例子,写一个实现了机构注册和机构查询的简单的功能,由2个go文件组成,第一个go文件是chaincode的main函数文件,第二个go文件实现了真正的功能,以此类推,再多的功能可以由第3个,第n个go文件实现,不同类型的go文件放到不同的子目录中,从而实现了chaincode的模块化开发。

1)建立主目录和子模块目录

       在GOPATH目录下 建立一个测试目录 mytest.com,在mytest.com下建立orgbase子模块目录

2)建立chaincode主程序

     在mytest.com目录下建立一个testmain.go的chaincode主程序文件,

     文件中必须包含main函数,Init函数和Invoke函数,文件内容如下:

package main

import (

"fmt"

"mytest.com/orgbase"

"github.com/hyperledger/fabric/core/chaincode/shim"

pb "github.com/hyperledger/fabric/protos/peer"

)

/*

定义SimpleChaincode

*/

type SimpleChaincode struct {

}

/*

主程序初始化

*/

func (t *SimpleChaincode) Init(stub shim.ChaincodeStubInterface) pb.Response {

return shim.Success(nil)

}

/*

机构开户

*/

f

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值