qsc

package
v0.0.4 Latest Latest
Warning

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

Go to latest
Published: Feb 22, 2019 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DefaultCodeSpace btypes.CodespaceType = "qsc"

	CodeInvalidInput        btypes.CodeType = 301 // 信息有误
	CodeInvalidQSCCA        btypes.CodeType = 302 // 无效证书
	CodeWrongQSCCA          btypes.CodeType = 303 // 证书有误
	CodeInvalidInitAccounts btypes.CodeType = 304 // 散币账户币种币值有误
	CodeCreatorNotExists    btypes.CodeType = 305 // 创建账户不存在
	CodeQSCExists           btypes.CodeType = 306 // QSC已存在
	CodeQSCNotExists        btypes.CodeType = 307 // QSC不存在
	CodeBankerNotExists     btypes.CodeType = 308 // Banker账户不存在
)

QSC errors reserve 300 ~ 399.

View Source
const (
	QSCMapperName = "qsc"
	QSCKey        = "qsc/[%s]"
	QSCRootCAKey  = "rootca"
)
View Source
const (
	MaxDescriptionLen = 1000
	MaxQSCNameLen     = 8
)

Variables

This section is empty.

Functions

func BuildQSCKey

func BuildQSCKey(qscName string) []byte

func BuildQSCKeyPrefix

func BuildQSCKeyPrefix() []byte

func ErrBankerNotExists

func ErrBankerNotExists(codeSpace btypes.CodespaceType, msg string) btypes.Error

func ErrCreatorNotExists

func ErrCreatorNotExists(codeSpace btypes.CodespaceType, msg string) btypes.Error

func ErrInvalidInitAccounts

func ErrInvalidInitAccounts(codeSpace btypes.CodespaceType, msg string) btypes.Error

func ErrInvalidInput

func ErrInvalidInput(codeSpace btypes.CodespaceType, msg string) btypes.Error

func ErrInvalidQSCCA

func ErrInvalidQSCCA(codeSpace btypes.CodespaceType, msg string) btypes.Error

func ErrQSCExists

func ErrQSCExists(codeSpace btypes.CodespaceType, msg string) btypes.Error

func ErrQSCNotExists

func ErrQSCNotExists(codeSpace btypes.CodespaceType, msg string) btypes.Error

func ErrWrongQSCCA

func ErrWrongQSCCA(codeSpace btypes.CodespaceType, msg string) btypes.Error

func InitGenesis

func InitGenesis(ctx context.Context, data GenesisState)

func RegisterCodec

func RegisterCodec(cdc *amino.Codec)

Types

type GenesisState

type GenesisState struct {
	RootPubKey crypto.PubKey   `json:"ca_root_pub_key"`
	QSCs       []types.QSCInfo `json:"qscs"`
}

func ExportGenesis

func ExportGenesis(ctx context.Context) GenesisState

func NewGenesisState

func NewGenesisState(pubKey crypto.PubKey, qscs []types.QSCInfo) GenesisState

type QSCMapper

type QSCMapper struct {
	*mapper.BaseMapper
}

func NewQSCMapper

func NewQSCMapper() *QSCMapper

func (*QSCMapper) Copy

func (mapper *QSCMapper) Copy() mapper.IMapper

func (*QSCMapper) Exists

func (mapper *QSCMapper) Exists(qscName string) bool

func (*QSCMapper) GetQSCRootCA

func (mapper *QSCMapper) GetQSCRootCA() crypto.PubKey

获取CA

func (*QSCMapper) GetQSCs

func (mapper *QSCMapper) GetQSCs() []types.QSCInfo

func (*QSCMapper) GetQsc

func (mapper *QSCMapper) GetQsc(qscName string) (qscinfo *types.QSCInfo)

func (*QSCMapper) SaveQsc

func (mapper *QSCMapper) SaveQsc(qscInfo *types.QSCInfo)

func (*QSCMapper) SetQSCRootCA

func (mapper *QSCMapper) SetQSCRootCA(pubKey crypto.PubKey)

保存CA

type TxCreateQSC

type TxCreateQSC struct {
	Creator     btypes.Address      `json:"creator"`     //QSC创建账户
	Extrate     string              `json:"extrate"`     //qcs:qos汇率(amino不支持binary形式的浮点数序列化,精度同qos erc20 [.0000])
	QSCCA       *cert.Certificate   `json:"qsc_crt"`     //CA信息
	Description string              `json:"description"` //描述信息
	Accounts    []*types.QOSAccount `json:"accounts"`
}

create QSC

func (TxCreateQSC) CalcGas

func (tx TxCreateQSC) CalcGas() btypes.BigInt

func (TxCreateQSC) Exec

func (tx TxCreateQSC) Exec(ctx context.Context) (result btypes.Result, crossTxQcp *txs.TxQcp)

func (TxCreateQSC) GetGasPayer

func (tx TxCreateQSC) GetGasPayer() btypes.Address

func (TxCreateQSC) GetSignData

func (tx TxCreateQSC) GetSignData() (ret []byte)

func (TxCreateQSC) GetSigner

func (tx TxCreateQSC) GetSigner() []btypes.Address

func (TxCreateQSC) ValidateData

func (tx TxCreateQSC) ValidateData(ctx context.Context) error

type TxIssueQSC

type TxIssueQSC struct {
	QSCName string         `json:"qsc_name"` //币名
	Amount  btypes.BigInt  `json:"amount"`   //金额
	Banker  btypes.Address `json:"banker"`   //banker地址
}

issue QSC

func (TxIssueQSC) CalcGas

func (tx TxIssueQSC) CalcGas() btypes.BigInt

func (TxIssueQSC) Exec

func (tx TxIssueQSC) Exec(ctx context.Context) (result btypes.Result, crossTxQcp *txs.TxQcp)

func (TxIssueQSC) GetGasPayer

func (tx TxIssueQSC) GetGasPayer() btypes.Address

func (TxIssueQSC) GetSignData

func (tx TxIssueQSC) GetSignData() (ret []byte)

func (TxIssueQSC) GetSigner

func (tx TxIssueQSC) GetSigner() []btypes.Address

func (TxIssueQSC) ValidateData

func (tx TxIssueQSC) ValidateData(ctx context.Context) error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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