Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

contract

maggie edited this page Sep 15, 2020 · 1 revision

Contract模块重构

  • 模块介绍
  • 重构任务
  • 重构设计
  • 接口说明

1. 模块介绍

Contract模块

  • 主要功能
    • 将智能合约用一个Java类来描述,用户通过调用该Java类操作合约。
    • 提供预编译合约接口。
      • SystemConfig:节点配置
        • setValueByKey: 根据键设置对应的值
      • CNS:CNS服务 ( CNS:合约名系统,将合约地址与合约名称相互映射的系统)
        • insert:新增记录
        • selectByName:根据合约名查询地址
        • selectByNameAndVersion:根据合约名和版本查询地址
      • PermissionService:权限管理
        • grantUserTableManager、revokeUserTableManager:根据用户表名和外部账户地址设置/去除权限信息
        • grantDeployAndCreateManager、revokeDeployAndCreateManager:增加/移除外部账户地址的部署合约和创建用户表权限
        • grantPermissionManager、revokePermissionManager:增加/移除外部账户地址的管理权限的权限
        • grantNodeManager、revokeNodeManager: 增加/移除外部账户地址的节点管理权限
        • grantCNSManager、revokeCNSManager:增加/移除外部账户地址的使用CNS权限
        • grantSysConfigManager、revokeSysConfigManager: 增加/移除外部账户地址的系统参数管理权限
        • listUserTableManager:根据用户表名查询设置的权限记录列表(每条记录包含外部账户地址和生效块高)。
        • listDeployAndCreateManager:查询拥有部署合约和创建用户表权限的权限记录列表
        • listPermissionManager:查询拥有管理权限的权限记录列表
        • listNodeManager: 查询拥有节点管理的权限记录列表
        • listCNSManager:查询拥有使用CNS的权限记录列表
        • listSysConfigManager:查询拥有系统参数管理的权限记录列表
      • CRUD:CRUD服务 (CRUD:用户可以使用CRUD模块,在区块链网络中创建表,存储业务数据,并对表增删改查操作)
        • createTable:创建表
        • insert: 插入记录
        • update: 更新记录
        • select: 查询记录
        • remove: 删除记录
        • desc: 根据表名查询表的信息
      • Consensus : 共识管理
        • addSealer: 根据节点NodeID设置对应节点为共识节点
        • addObserver: 根据节点NodeID设置对应节点为观察节点
        • removeNode: 根据节点NodeID设置对应节点为游离节点

2. 重构任务

  • 适配新的交易模块、事件订阅模块
Clone this wiki locally
Morty Proxy This is a proxified and sanitized view of the page, visit original site.