contractmgr

package
v2.3.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 29, 2024 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ContractName 当前合约的合约名
	ContractName = syscontract.SystemContract_CONTRACT_MANAGE.String()
	// TRUE bytes true
	TRUE = []byte("true")
	// FALSE bytes false
	FALSE = []byte("false")
)

Functions

This section is empty.

Types

type ContractManager

type ContractManager struct {
	// contains filtered or unexported fields
}

ContractManager 提供合约安装、升级、冻结、查询等

func NewContractManager

func NewContractManager(log protocol.Logger) *ContractManager

NewContractManager create a new ContractManager instance @param log @return *ContractManager

func (*ContractManager) GetMethod

func (c *ContractManager) GetMethod(methodName string) common.ContractFunc

GetMethod get register method by name

type ContractManagerRuntime

type ContractManagerRuntime struct {
	// contains filtered or unexported fields
}

ContractManagerRuntime contract manager runtime instance

func (*ContractManagerRuntime) FreezeContract

func (r *ContractManagerRuntime) FreezeContract(context protocol.TxSimContext, name string) (
	*commonPb.Contract, error)

FreezeContract 冻结合约

func (*ContractManagerRuntime) GetAllContracts

func (r *ContractManagerRuntime) GetAllContracts(context protocol.TxSimContext) ([]*commonPb.Contract, error)

GetAllContracts 查询所有合约的详细信息 返回合约地址和基础信息 @return name 合约名称 @return Version 版本 @return RuntimeType 运行时类型 @return Status 状态一般是0 @return Creator 创建合约的人 @return Address 合约地址

func (*ContractManagerRuntime) GetContractByteCode

func (r *ContractManagerRuntime) GetContractByteCode(context protocol.TxSimContext, name string) ([]byte, error)

GetContractByteCode 获得合约的字节码

func (*ContractManagerRuntime) GetContractInfo

func (r *ContractManagerRuntime) GetContractInfo(context protocol.TxSimContext, name string) (*commonPb.Contract,
	error)

GetContractInfo 根据合约名字查询合约的详细信息 返回合约地址和基础信息 @return name 合约名称 @return Version 版本 @return RuntimeType 运行时类型 @return Status 状态一般是0 @return Creator 创建合约的人 @return Address 合约地址

func (*ContractManagerRuntime) InitNewNativeContract added in v2.2.0

func (r *ContractManagerRuntime) InitNewNativeContract(txSimContext protocol.TxSimContext, _ map[string][]byte) (
	[]byte, error)

InitNewNativeContract 初始化系统合约,之前没有初始化的补齐

func (*ContractManagerRuntime) RevokeContract

func (r *ContractManagerRuntime) RevokeContract(context protocol.TxSimContext, name string) (
	*commonPb.Contract, error)

RevokeContract 吊销合约

func (*ContractManagerRuntime) UnfreezeContract

func (r *ContractManagerRuntime) UnfreezeContract(context protocol.TxSimContext, name string) (
	*commonPb.Contract, error)

UnfreezeContract 解冻合约

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL