xldgpb

package
v1.0.2 Latest Latest
Warning

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

Go to latest
Published: Jan 27, 2022 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (
	BlocksTablePrefix        = "B" //表名prefix必须用一个字母,否则拼key在compare的时候会和后面的后缀无法区分开
	UTXOTablePrefix          = "U"
	UnconfirmedTablePrefix   = "N"
	ConfirmedTablePrefix     = "C"
	MetaTablePrefix          = "M"
	PendingBlocksTablePrefix = "PB"
	ExtUtxoDelTablePrefix    = "ZD"
	ExtUtxoTablePrefix       = "ZU"
	BlockHeightPrefix        = "ZH"
	BranchInfoPrefix         = "ZI"
)

common definition for KV prefix

View Source
const FeePlaceholder = "$"

FeePlaceholder fee identifier to miner

Variables

View Source
var (
	TransactionStatus_name = map[int32]string{
		0: "TX_UNDEFINE",
		1: "TX_NOEXIST",
		2: "TX_CONFIRM",
		3: "TX_FURCATION",
		4: "TX_UNCONFIRM",
		5: "TX_FAILED",
	}
	TransactionStatus_value = map[string]int32{
		"TX_UNDEFINE":  0,
		"TX_NOEXIST":   1,
		"TX_CONFIRM":   2,
		"TX_FURCATION": 3,
		"TX_UNCONFIRM": 4,
		"TX_FAILED":    5,
	}
)

Enum value maps for TransactionStatus.

View Source
var (
	BlockStatus_name = map[int32]string{
		0: "BLOCK_ERROR",
		1: "BLOCK_TRUNK",
		2: "BLOCK_BRANCH",
		3: "BLOCK_NOEXIST",
	}
	BlockStatus_value = map[string]int32{
		"BLOCK_ERROR":   0,
		"BLOCK_TRUNK":   1,
		"BLOCK_BRANCH":  2,
		"BLOCK_NOEXIST": 3,
	}
)

Enum value maps for BlockStatus.

View Source
var (
	QCState_name = map[int32]string{
		0: "NEW_VIEW",
		1: "PREPARE",
		2: "PRE_COMMIT",
		3: "COMMIT",
		4: "DECIDE",
	}
	QCState_value = map[string]int32{
		"NEW_VIEW":   0,
		"PREPARE":    1,
		"PRE_COMMIT": 2,
		"COMMIT":     3,
		"DECIDE":     4,
	}
)

Enum value maps for QCState.

View Source
var File_bcs_ledger_xledger_xldgpb_xledger_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type BalanceDetailInfo

type BalanceDetailInfo struct {
	Balance  string `protobuf:"bytes,1,opt,name=balance,proto3" json:"balance,omitempty"`
	IsFrozen bool   `protobuf:"varint,2,opt,name=isFrozen,proto3" json:"isFrozen,omitempty"`
	// contains filtered or unexported fields
}

func (*BalanceDetailInfo) Descriptor deprecated

func (*BalanceDetailInfo) Descriptor() ([]byte, []int)

Deprecated: Use BalanceDetailInfo.ProtoReflect.Descriptor instead.

func (*BalanceDetailInfo) GetBalance

func (x *BalanceDetailInfo) GetBalance() string

func (*BalanceDetailInfo) GetIsFrozen

func (x *BalanceDetailInfo) GetIsFrozen() bool

func (*BalanceDetailInfo) ProtoMessage

func (*BalanceDetailInfo) ProtoMessage()

func (*BalanceDetailInfo) ProtoReflect

func (x *BalanceDetailInfo) ProtoReflect() protoreflect.Message

func (*BalanceDetailInfo) Reset

func (x *BalanceDetailInfo) Reset()

func (*BalanceDetailInfo) String

func (x *BalanceDetailInfo) String() string

type BlockStatus

type BlockStatus int32

BlockStatus is the status of block

const (
	BlockStatus_BLOCK_ERROR   BlockStatus = 0
	BlockStatus_BLOCK_TRUNK   BlockStatus = 1
	BlockStatus_BLOCK_BRANCH  BlockStatus = 2
	BlockStatus_BLOCK_NOEXIST BlockStatus = 3
)

func (BlockStatus) Descriptor

func (BlockStatus) Enum

func (x BlockStatus) Enum() *BlockStatus

func (BlockStatus) EnumDescriptor deprecated

func (BlockStatus) EnumDescriptor() ([]byte, []int)

Deprecated: Use BlockStatus.Descriptor instead.

func (BlockStatus) Number

func (x BlockStatus) Number() protoreflect.EnumNumber

func (BlockStatus) String

func (x BlockStatus) String() string

func (BlockStatus) Type

type HDInfo

type HDInfo struct {

	// HDPublickey
	HdPublicKey []byte `protobuf:"bytes,1,opt,name=hd_public_key,json=hdPublicKey,proto3" json:"hd_public_key,omitempty"`
	// original_hash
	OriginalHash []byte `protobuf:"bytes,2,opt,name=original_hash,json=originalHash,proto3" json:"original_hash,omitempty"`
	// contains filtered or unexported fields
}

func (*HDInfo) Descriptor deprecated

func (*HDInfo) Descriptor() ([]byte, []int)

Deprecated: Use HDInfo.ProtoReflect.Descriptor instead.

func (*HDInfo) GetHdPublicKey

func (x *HDInfo) GetHdPublicKey() []byte

func (*HDInfo) GetOriginalHash

func (x *HDInfo) GetOriginalHash() []byte

func (*HDInfo) ProtoMessage

func (*HDInfo) ProtoMessage()

func (*HDInfo) ProtoReflect

func (x *HDInfo) ProtoReflect() protoreflect.Message

func (*HDInfo) Reset

func (x *HDInfo) Reset()

func (*HDInfo) String

func (x *HDInfo) String() string

type InternalBlock

type InternalBlock struct {

	// block version
	Version int32 `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
	// Random number used to avoid replay attacks
	Nonce int32 `protobuf:"varint,2,opt,name=nonce,proto3" json:"nonce,omitempty"`
	// blockid generate the hash sign of the block used by sha256
	Blockid []byte `protobuf:"bytes,3,opt,name=blockid,proto3" json:"blockid,omitempty"`
	// pre_hash is the parent blockid of the block
	PreHash []byte `protobuf:"bytes,4,opt,name=pre_hash,json=preHash,proto3" json:"pre_hash,omitempty"`
	// The miner id
	Proposer []byte `protobuf:"bytes,5,opt,name=proposer,proto3" json:"proposer,omitempty"`
	// The sign which miner signed: blockid + nonce + timestamp
	Sign []byte `protobuf:"bytes,6,opt,name=sign,proto3" json:"sign,omitempty"`
	// The pk of the miner
	Pubkey []byte `protobuf:"bytes,7,opt,name=pubkey,proto3" json:"pubkey,omitempty"`
	// The Merkle Tree root
	MerkleRoot []byte `protobuf:"bytes,8,opt,name=merkle_root,json=merkleRoot,proto3" json:"merkle_root,omitempty"`
	// The height of the blockchain
	Height int64 `protobuf:"varint,9,opt,name=height,proto3" json:"height,omitempty"`
	// Timestamp of the block
	Timestamp int64 `protobuf:"varint,10,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	// Transactions of the block, only txid stored on kv, the detail information
	// stored in another table
	Transactions []*Transaction `protobuf:"bytes,11,rep,name=transactions,proto3" json:"transactions,omitempty"`
	// The transaction count of the block
	TxCount int32 `protobuf:"varint,12,opt,name=tx_count,json=txCount,proto3" json:"tx_count,omitempty"`
	// 所有交易hash的merkle tree
	MerkleTree  [][]byte          `protobuf:"bytes,13,rep,name=merkle_tree,json=merkleTree,proto3" json:"merkle_tree,omitempty"`
	CurTerm     int64             `protobuf:"varint,16,opt,name=curTerm,proto3" json:"curTerm,omitempty"`
	CurBlockNum int64             `protobuf:"varint,17,opt,name=curBlockNum,proto3" json:"curBlockNum,omitempty"`
	FailedTxs   map[string]string `` // txid -> failed reason
	/* 177-byte string literal not displayed */
	TargetBits int32 `protobuf:"varint,19,opt,name=targetBits,proto3" json:"targetBits,omitempty"`
	// Justify used in chained-bft
	Justify *QuorumCert `protobuf:"bytes,20,opt,name=Justify,proto3" json:"Justify,omitempty"`
	// 下面的属性会动态变化
	// If the block is on the trunk
	InTrunk bool `protobuf:"varint,14,opt,name=in_trunk,json=inTrunk,proto3" json:"in_trunk,omitempty"`
	// Next next block which on trunk
	NextHash []byte `protobuf:"bytes,15,opt,name=next_hash,json=nextHash,proto3" json:"next_hash,omitempty"`
	// contains filtered or unexported fields
}

The internal block struct

func (*InternalBlock) ContainsTx

func (ib *InternalBlock) ContainsTx(txid []byte) bool

ContainsTx returns whether a tx is included in a block

func (*InternalBlock) Descriptor deprecated

func (*InternalBlock) Descriptor() ([]byte, []int)

Deprecated: Use InternalBlock.ProtoReflect.Descriptor instead.

func (*InternalBlock) GetBlockid

func (x *InternalBlock) GetBlockid() []byte

func (*InternalBlock) GetCoinbaseTotal

func (ib *InternalBlock) GetCoinbaseTotal() *big.Int

GetCoinbaseTotal get total coinbase amount

func (*InternalBlock) GetCurBlockNum

func (x *InternalBlock) GetCurBlockNum() int64

func (*InternalBlock) GetCurTerm

func (x *InternalBlock) GetCurTerm() int64

func (*InternalBlock) GetFailedTxs

func (x *InternalBlock) GetFailedTxs() map[string]string

func (*InternalBlock) GetHeight

func (x *InternalBlock) GetHeight() int64

func (*InternalBlock) GetInTrunk

func (x *InternalBlock) GetInTrunk() bool

func (*InternalBlock) GetJustify

func (x *InternalBlock) GetJustify() *QuorumCert

func (*InternalBlock) GetMerkleRoot

func (x *InternalBlock) GetMerkleRoot() []byte

func (*InternalBlock) GetMerkleTree

func (x *InternalBlock) GetMerkleTree() [][]byte

func (*InternalBlock) GetNextHash

func (x *InternalBlock) GetNextHash() []byte

func (*InternalBlock) GetNonce

func (x *InternalBlock) GetNonce() int32

func (*InternalBlock) GetPreHash

func (x *InternalBlock) GetPreHash() []byte

func (*InternalBlock) GetProposer

func (x *InternalBlock) GetProposer() []byte

func (*InternalBlock) GetPubkey

func (x *InternalBlock) GetPubkey() []byte

func (*InternalBlock) GetSign

func (x *InternalBlock) GetSign() []byte

func (*InternalBlock) GetTargetBits

func (x *InternalBlock) GetTargetBits() int32

func (*InternalBlock) GetTimestamp

func (x *InternalBlock) GetTimestamp() int64

func (*InternalBlock) GetTransactions

func (x *InternalBlock) GetTransactions() []*Transaction

func (*InternalBlock) GetTx

func (ib *InternalBlock) GetTx(txid []byte) *Transaction

GetTx returns a tx included in a block

func (*InternalBlock) GetTxCount

func (x *InternalBlock) GetTxCount() int32

func (*InternalBlock) GetVersion

func (x *InternalBlock) GetVersion() int32

func (*InternalBlock) ProtoMessage

func (*InternalBlock) ProtoMessage()

func (*InternalBlock) ProtoReflect

func (x *InternalBlock) ProtoReflect() protoreflect.Message

func (*InternalBlock) Reset

func (x *InternalBlock) Reset()

func (*InternalBlock) String

func (x *InternalBlock) String() string

type LedgerMeta

type LedgerMeta struct {

	// root block id
	RootBlockid []byte `protobuf:"bytes,1,opt,name=root_blockid,json=rootBlockid,proto3" json:"root_blockid,omitempty"`
	// tip block id
	TipBlockid []byte `protobuf:"bytes,2,opt,name=tip_blockid,json=tipBlockid,proto3" json:"tip_blockid,omitempty"`
	// the height of the trunk
	TrunkHeight int64 `protobuf:"varint,3,opt,name=trunk_height,json=trunkHeight,proto3" json:"trunk_height,omitempty"`
	// contains filtered or unexported fields
}

Ledger metadata

func (*LedgerMeta) Descriptor deprecated

func (*LedgerMeta) Descriptor() ([]byte, []int)

Deprecated: Use LedgerMeta.ProtoReflect.Descriptor instead.

func (*LedgerMeta) GetRootBlockid

func (x *LedgerMeta) GetRootBlockid() []byte

func (*LedgerMeta) GetTipBlockid

func (x *LedgerMeta) GetTipBlockid() []byte

func (*LedgerMeta) GetTrunkHeight

func (x *LedgerMeta) GetTrunkHeight() int64

func (*LedgerMeta) ProtoMessage

func (*LedgerMeta) ProtoMessage()

func (*LedgerMeta) ProtoReflect

func (x *LedgerMeta) ProtoReflect() protoreflect.Message

func (*LedgerMeta) Reset

func (x *LedgerMeta) Reset()

func (*LedgerMeta) String

func (x *LedgerMeta) String() string

type ModifyBlock

type ModifyBlock struct {

	// txid交易被effective_txid的交易提出可修改区块链的请求
	EffectiveTxid string `protobuf:"bytes,1,opt,name=effective_txid,json=effectiveTxid,proto3" json:"effective_txid,omitempty"`
	// 本交易是否已被修改标记
	Marked bool `protobuf:"varint,2,opt,name=marked,proto3" json:"marked,omitempty"`
	// txid交易被修改生效的高度
	EffectiveHeight int64 `protobuf:"varint,3,opt,name=effective_height,json=effectiveHeight,proto3" json:"effective_height,omitempty"`
	// 监管的public key
	PublicKey string `protobuf:"bytes,4,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"`
	// 监管地址对修改的交易id的签名
	Sign string `protobuf:"bytes,5,opt,name=sign,proto3" json:"sign,omitempty"`
	// contains filtered or unexported fields
}

func (*ModifyBlock) Descriptor deprecated

func (*ModifyBlock) Descriptor() ([]byte, []int)

Deprecated: Use ModifyBlock.ProtoReflect.Descriptor instead.

func (*ModifyBlock) GetEffectiveHeight

func (x *ModifyBlock) GetEffectiveHeight() int64

func (*ModifyBlock) GetEffectiveTxid

func (x *ModifyBlock) GetEffectiveTxid() string

func (*ModifyBlock) GetMarked

func (x *ModifyBlock) GetMarked() bool

func (*ModifyBlock) GetPublicKey

func (x *ModifyBlock) GetPublicKey() string

func (*ModifyBlock) GetSign

func (x *ModifyBlock) GetSign() string

func (*ModifyBlock) ProtoMessage

func (*ModifyBlock) ProtoMessage()

func (*ModifyBlock) ProtoReflect

func (x *ModifyBlock) ProtoReflect() protoreflect.Message

func (*ModifyBlock) Reset

func (x *ModifyBlock) Reset()

func (*ModifyBlock) String

func (x *ModifyBlock) String() string

type QCSignInfos

type QCSignInfos struct {

	// QCSignInfos
	QCSignInfos []*SignInfo `protobuf:"bytes,1,rep,name=QCSignInfos,proto3" json:"QCSignInfos,omitempty"`
	// contains filtered or unexported fields
}

QCSignInfos is the signs of the leader gathered from replicas of a specifically certType. A slice of signs is used at present. TODO @qizheng09: It will be change to Threshold-Signatures after Crypto lib support Threshold-Signatures.

func (*QCSignInfos) Descriptor deprecated

func (*QCSignInfos) Descriptor() ([]byte, []int)

Deprecated: Use QCSignInfos.ProtoReflect.Descriptor instead.

func (*QCSignInfos) GetQCSignInfos

func (x *QCSignInfos) GetQCSignInfos() []*SignInfo

func (*QCSignInfos) ProtoMessage

func (*QCSignInfos) ProtoMessage()

func (*QCSignInfos) ProtoReflect

func (x *QCSignInfos) ProtoReflect() protoreflect.Message

func (*QCSignInfos) Reset

func (x *QCSignInfos) Reset()

func (*QCSignInfos) String

func (x *QCSignInfos) String() string

type QCState

type QCState int32

QCState is the phase of hotstuff

const (
	QCState_NEW_VIEW   QCState = 0
	QCState_PREPARE    QCState = 1
	QCState_PRE_COMMIT QCState = 2
	QCState_COMMIT     QCState = 3
	QCState_DECIDE     QCState = 4
)

func (QCState) Descriptor

func (QCState) Descriptor() protoreflect.EnumDescriptor

func (QCState) Enum

func (x QCState) Enum() *QCState

func (QCState) EnumDescriptor deprecated

func (QCState) EnumDescriptor() ([]byte, []int)

Deprecated: Use QCState.Descriptor instead.

func (QCState) Number

func (x QCState) Number() protoreflect.EnumNumber

func (QCState) String

func (x QCState) String() string

func (QCState) Type

func (QCState) Type() protoreflect.EnumType

type QuorumCert

type QuorumCert struct {

	// The id of Proposal this QC certified.
	ProposalId []byte `protobuf:"bytes,1,opt,name=ProposalId,proto3" json:"ProposalId,omitempty"`
	// The msg of Proposal this QC certified.
	ProposalMsg []byte `protobuf:"bytes,2,opt,name=ProposalMsg,proto3" json:"ProposalMsg,omitempty"`
	// The current type of this QC certified.
	// the type contains `NEW_VIEW`, `PREPARE`
	Type QCState `protobuf:"varint,3,opt,name=Type,proto3,enum=xldgpb.QCState" json:"Type,omitempty"`
	// The view number of this QC certified.
	ViewNumber int64 `protobuf:"varint,4,opt,name=ViewNumber,proto3" json:"ViewNumber,omitempty"`
	// SignInfos is the signs of the leader gathered from replicas
	// of a specifically certType.
	SignInfos *QCSignInfos `protobuf:"bytes,5,opt,name=SignInfos,proto3" json:"SignInfos,omitempty"`
	// contains filtered or unexported fields
}

QuorumCert is a data type that combines a collection of signatures from replicas.

func (*QuorumCert) Descriptor deprecated

func (*QuorumCert) Descriptor() ([]byte, []int)

Deprecated: Use QuorumCert.ProtoReflect.Descriptor instead.

func (*QuorumCert) GetProposalId

func (x *QuorumCert) GetProposalId() []byte

func (*QuorumCert) GetProposalMsg

func (x *QuorumCert) GetProposalMsg() []byte

func (*QuorumCert) GetSignInfos

func (x *QuorumCert) GetSignInfos() *QCSignInfos

func (*QuorumCert) GetType

func (x *QuorumCert) GetType() QCState

func (*QuorumCert) GetViewNumber

func (x *QuorumCert) GetViewNumber() int64

func (*QuorumCert) ProtoMessage

func (*QuorumCert) ProtoMessage()

func (*QuorumCert) ProtoReflect

func (x *QuorumCert) ProtoReflect() protoreflect.Message

func (*QuorumCert) Reset

func (x *QuorumCert) Reset()

func (*QuorumCert) String

func (x *QuorumCert) String() string

type SignInfo

type SignInfo struct {
	Address   string `protobuf:"bytes,1,opt,name=Address,proto3" json:"Address,omitempty"`
	PublicKey string `protobuf:"bytes,2,opt,name=PublicKey,proto3" json:"PublicKey,omitempty"`
	Sign      []byte `protobuf:"bytes,3,opt,name=Sign,proto3" json:"Sign,omitempty"`
	// contains filtered or unexported fields
}

SignInfo is the signature information of the

func (*SignInfo) Descriptor deprecated

func (*SignInfo) Descriptor() ([]byte, []int)

Deprecated: Use SignInfo.ProtoReflect.Descriptor instead.

func (*SignInfo) GetAddress

func (x *SignInfo) GetAddress() string

func (*SignInfo) GetPublicKey

func (x *SignInfo) GetPublicKey() string

func (*SignInfo) GetSign

func (x *SignInfo) GetSign() []byte

func (*SignInfo) ProtoMessage

func (*SignInfo) ProtoMessage()

func (*SignInfo) ProtoReflect

func (x *SignInfo) ProtoReflect() protoreflect.Message

func (*SignInfo) Reset

func (x *SignInfo) Reset()

func (*SignInfo) String

func (x *SignInfo) String() string

type Transaction

type Transaction struct {

	// txid is the id of this transaction
	Txid []byte `protobuf:"bytes,1,opt,name=txid,proto3" json:"txid,omitempty"`
	// the blockid the transaction belong to
	Blockid []byte `protobuf:"bytes,2,opt,name=blockid,proto3" json:"blockid,omitempty"`
	// Transaction input list
	TxInputs []*protos.TxInput `protobuf:"bytes,3,rep,name=tx_inputs,json=txInputs,proto3" json:"tx_inputs,omitempty"`
	// Transaction output list
	TxOutputs []*protos.TxOutput `protobuf:"bytes,4,rep,name=tx_outputs,json=txOutputs,proto3" json:"tx_outputs,omitempty"`
	// Transaction description or system contract
	Desc []byte `protobuf:"bytes,6,opt,name=desc,proto3" json:"desc,omitempty"`
	// Mining rewards
	Coinbase bool `protobuf:"varint,7,opt,name=coinbase,proto3" json:"coinbase,omitempty"`
	// Random number used to avoid replay attacks
	Nonce string `protobuf:"bytes,8,opt,name=nonce,proto3" json:"nonce,omitempty"`
	// Timestamp to launch the transaction
	Timestamp int64 `protobuf:"varint,9,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
	// tx format version; tx格式版本号
	Version int32 `protobuf:"varint,10,opt,name=version,proto3" json:"version,omitempty"`
	// auto generated tx
	Autogen          bool                    `protobuf:"varint,11,opt,name=autogen,proto3" json:"autogen,omitempty"`
	TxInputsExt      []*protos.TxInputExt    `protobuf:"bytes,23,rep,name=tx_inputs_ext,json=txInputsExt,proto3" json:"tx_inputs_ext,omitempty"`
	TxOutputsExt     []*protos.TxOutputExt   `protobuf:"bytes,24,rep,name=tx_outputs_ext,json=txOutputsExt,proto3" json:"tx_outputs_ext,omitempty"`
	ContractRequests []*protos.InvokeRequest `protobuf:"bytes,25,rep,name=contract_requests,json=contractRequests,proto3" json:"contract_requests,omitempty"`
	// 权限系统新增字段
	// 交易发起者, 可以是一个Address或者一个Account
	Initiator string `protobuf:"bytes,26,opt,name=initiator,proto3" json:"initiator,omitempty"`
	// 交易发起需要被收集签名的AddressURL集合信息,包括用于utxo转账和用于合约调用
	AuthRequire []string `protobuf:"bytes,27,rep,name=auth_require,json=authRequire,proto3" json:"auth_require,omitempty"`
	// 交易发起者对交易元数据签名,签名的内容包括auth_require字段
	InitiatorSigns []*protos.SignatureInfo `protobuf:"bytes,28,rep,name=initiator_signs,json=initiatorSigns,proto3" json:"initiator_signs,omitempty"`
	// 收集到的签名
	AuthRequireSigns []*protos.SignatureInfo `protobuf:"bytes,29,rep,name=auth_require_signs,json=authRequireSigns,proto3" json:"auth_require_signs,omitempty"`
	// 节点收到tx的时间戳,不参与签名
	ReceivedTimestamp int64 `protobuf:"varint,30,opt,name=received_timestamp,json=receivedTimestamp,proto3" json:"received_timestamp,omitempty"`
	// 统一签名(支持多重签名/环签名等,与initiator_signs/auth_require_signs不同时使用)
	XuperSign *XuperSignature `protobuf:"bytes,31,opt,name=xuper_sign,json=xuperSign,proto3" json:"xuper_sign,omitempty"`
	// 可修改区块链标记
	ModifyBlock *ModifyBlock `protobuf:"bytes,32,opt,name=modify_block,json=modifyBlock,proto3" json:"modify_block,omitempty"`
	// HD加解密相关信息
	HDInfo *HDInfo `protobuf:"bytes,33,opt,name=HD_info,json=HDInfo,proto3" json:"HD_info,omitempty"`
	//投票奖励
	VoteCoinbase bool `protobuf:"varint,34,opt,name=vote_coinbase,json=voteCoinbase,proto3" json:"vote_coinbase,omitempty"`
	//解冻,凭空产生的消耗
	ThawCoinbase bool `protobuf:"varint,35,opt,name=thaw_coinbase,json=thawCoinbase,proto3" json:"thaw_coinbase,omitempty"`
	// contains filtered or unexported fields
}

Transaction is the information of the transaction

func (*Transaction) Descriptor deprecated

func (*Transaction) Descriptor() ([]byte, []int)

Deprecated: Use Transaction.ProtoReflect.Descriptor instead.

func (*Transaction) FromAddrInList

func (tx *Transaction) FromAddrInList(whiteList map[string]bool) bool

FromAddrInList 判断交易的发起人是否在白名单

func (*Transaction) GetAmountByAddress

func (tx *Transaction) GetAmountByAddress(address string) *big.Int

GetAmountByAddress 获得交易的Output中某个address的收益

func (*Transaction) GetAuthRequire

func (x *Transaction) GetAuthRequire() []string

func (*Transaction) GetAuthRequireSigns

func (x *Transaction) GetAuthRequireSigns() []*protos.SignatureInfo

func (*Transaction) GetAutogen

func (x *Transaction) GetAutogen() bool

func (*Transaction) GetBlockid

func (x *Transaction) GetBlockid() []byte

func (*Transaction) GetCoinbase

func (x *Transaction) GetCoinbase() bool

func (*Transaction) GetContractRequests

func (x *Transaction) GetContractRequests() []*protos.InvokeRequest

func (*Transaction) GetDesc

func (x *Transaction) GetDesc() []byte

func (*Transaction) GetFee

func (tx *Transaction) GetFee() *big.Int

GetFee get fee in tx output

func (*Transaction) GetFrozenAmount

func (tx *Transaction) GetFrozenAmount(height int64) *big.Int

GetFrozenAmount 获得交易output中超过某height才能解冻的金额

func (*Transaction) GetHDInfo

func (x *Transaction) GetHDInfo() *HDInfo

func (*Transaction) GetInitiator

func (x *Transaction) GetInitiator() string

func (*Transaction) GetInitiatorSigns

func (x *Transaction) GetInitiatorSigns() []*protos.SignatureInfo

func (*Transaction) GetModifyBlock

func (x *Transaction) GetModifyBlock() *ModifyBlock

func (*Transaction) GetNonce

func (x *Transaction) GetNonce() string

func (*Transaction) GetReceivedTimestamp

func (x *Transaction) GetReceivedTimestamp() int64

func (*Transaction) GetThawCoinbase

func (x *Transaction) GetThawCoinbase() bool

func (*Transaction) GetTimestamp

func (x *Transaction) GetTimestamp() int64

func (*Transaction) GetTxInputs

func (x *Transaction) GetTxInputs() []*protos.TxInput

func (*Transaction) GetTxInputsExt

func (x *Transaction) GetTxInputsExt() []*protos.TxInputExt

func (*Transaction) GetTxOutputs

func (x *Transaction) GetTxOutputs() []*protos.TxOutput

func (*Transaction) GetTxOutputsExt

func (x *Transaction) GetTxOutputsExt() []*protos.TxOutputExt

func (*Transaction) GetTxid

func (x *Transaction) GetTxid() []byte

func (*Transaction) GetVersion

func (x *Transaction) GetVersion() int32

func (*Transaction) GetVoteCoinbase

func (x *Transaction) GetVoteCoinbase() bool

func (*Transaction) GetXuperSign

func (x *Transaction) GetXuperSign() *XuperSignature

func (*Transaction) HexTxid

func (tx *Transaction) HexTxid() string

HexTxid get txid in hex string

func (*Transaction) ProtoMessage

func (*Transaction) ProtoMessage()

func (*Transaction) ProtoReflect

func (x *Transaction) ProtoReflect() protoreflect.Message

func (*Transaction) Reset

func (x *Transaction) Reset()

func (*Transaction) String

func (x *Transaction) String() string

type TransactionStatus

type TransactionStatus int32
const (
	// Undefined status
	TransactionStatus_TX_UNDEFINE TransactionStatus = 0
	// Transaction not exist
	TransactionStatus_TX_NOEXIST TransactionStatus = 1
	// Transaction have been confirmed
	TransactionStatus_TX_CONFIRM TransactionStatus = 2
	// Transaction is on the furcation
	TransactionStatus_TX_FURCATION TransactionStatus = 3
	// Transaction have not been confirmed
	TransactionStatus_TX_UNCONFIRM TransactionStatus = 4
	// Transaction occurs error
	TransactionStatus_TX_FAILED TransactionStatus = 5
)

func (TransactionStatus) Descriptor

func (TransactionStatus) Enum

func (TransactionStatus) EnumDescriptor deprecated

func (TransactionStatus) EnumDescriptor() ([]byte, []int)

Deprecated: Use TransactionStatus.Descriptor instead.

func (TransactionStatus) Number

func (TransactionStatus) String

func (x TransactionStatus) String() string

func (TransactionStatus) Type

type TxDataAccount

type TxDataAccount struct {

	// 地址
	Address string `protobuf:"bytes,1,opt,name=address,proto3" json:"address,omitempty"`
	// 金额
	Amount string `protobuf:"bytes,2,opt,name=amount,proto3" json:"amount,omitempty"`
	// 冻结高度
	FrozenHeight int64 `protobuf:"varint,3,opt,name=frozen_height,json=frozenHeight,proto3" json:"frozen_height,omitempty"`
	// contains filtered or unexported fields
}

func (*TxDataAccount) Descriptor deprecated

func (*TxDataAccount) Descriptor() ([]byte, []int)

Deprecated: Use TxDataAccount.ProtoReflect.Descriptor instead.

func (*TxDataAccount) GetAddress

func (x *TxDataAccount) GetAddress() string

func (*TxDataAccount) GetAmount

func (x *TxDataAccount) GetAmount() string

func (*TxDataAccount) GetFrozenHeight

func (x *TxDataAccount) GetFrozenHeight() int64

func (*TxDataAccount) ProtoMessage

func (*TxDataAccount) ProtoMessage()

func (*TxDataAccount) ProtoReflect

func (x *TxDataAccount) ProtoReflect() protoreflect.Message

func (*TxDataAccount) Reset

func (x *TxDataAccount) Reset()

func (*TxDataAccount) String

func (x *TxDataAccount) String() string

type Utxo

type Utxo struct {
	Amount    []byte `protobuf:"bytes,1,opt,name=amount,proto3" json:"amount,omitempty"`
	ToAddr    []byte `protobuf:"bytes,2,opt,name=toAddr,proto3" json:"toAddr,omitempty"`
	ToPubkey  []byte `protobuf:"bytes,3,opt,name=toPubkey,proto3" json:"toPubkey,omitempty"`
	RefTxid   []byte `protobuf:"bytes,4,opt,name=refTxid,proto3" json:"refTxid,omitempty"`
	RefOffset int32  `protobuf:"varint,5,opt,name=refOffset,proto3" json:"refOffset,omitempty"`
	// contains filtered or unexported fields
}

func (*Utxo) Descriptor deprecated

func (*Utxo) Descriptor() ([]byte, []int)

Deprecated: Use Utxo.ProtoReflect.Descriptor instead.

func (*Utxo) GetAmount

func (x *Utxo) GetAmount() []byte

func (*Utxo) GetRefOffset

func (x *Utxo) GetRefOffset() int32

func (*Utxo) GetRefTxid

func (x *Utxo) GetRefTxid() []byte

func (*Utxo) GetToAddr

func (x *Utxo) GetToAddr() []byte

func (*Utxo) GetToPubkey

func (x *Utxo) GetToPubkey() []byte

func (*Utxo) ProtoMessage

func (*Utxo) ProtoMessage()

func (*Utxo) ProtoReflect

func (x *Utxo) ProtoReflect() protoreflect.Message

func (*Utxo) Reset

func (x *Utxo) Reset()

func (*Utxo) String

func (x *Utxo) String() string

type UtxoKey

type UtxoKey struct {
	RefTxid string `protobuf:"bytes,1,opt,name=refTxid,proto3" json:"refTxid,omitempty"`
	Offset  string `protobuf:"bytes,2,opt,name=offset,proto3" json:"offset,omitempty"`
	Amount  string `protobuf:"bytes,3,opt,name=amount,proto3" json:"amount,omitempty"`
	// contains filtered or unexported fields
}

func (*UtxoKey) Descriptor deprecated

func (*UtxoKey) Descriptor() ([]byte, []int)

Deprecated: Use UtxoKey.ProtoReflect.Descriptor instead.

func (*UtxoKey) GetAmount

func (x *UtxoKey) GetAmount() string

func (*UtxoKey) GetOffset

func (x *UtxoKey) GetOffset() string

func (*UtxoKey) GetRefTxid

func (x *UtxoKey) GetRefTxid() string

func (*UtxoKey) ProtoMessage

func (*UtxoKey) ProtoMessage()

func (*UtxoKey) ProtoReflect

func (x *UtxoKey) ProtoReflect() protoreflect.Message

func (*UtxoKey) Reset

func (x *UtxoKey) Reset()

func (*UtxoKey) String

func (x *UtxoKey) String() string

type UtxoMeta

type UtxoMeta struct {

	// utxo vm目前执行到的blockid
	LatestBlockid []byte   `protobuf:"bytes,1,opt,name=latest_blockid,json=latestBlockid,proto3" json:"latest_blockid,omitempty"`
	LockKeyList   []string `protobuf:"bytes,2,rep,name=lock_key_list,json=lockKeyList,proto3" json:"lock_key_list,omitempty"`
	// 当前utxo vm上的总资产
	UtxoTotal string `protobuf:"bytes,3,opt,name=utxo_total,json=utxoTotal,proto3" json:"utxo_total,omitempty"`
	// 平均上链延时
	AvgDelay int64 `protobuf:"varint,4,opt,name=avgDelay,proto3" json:"avgDelay,omitempty"`
	// 待确认交易量
	UnconfirmTxAmount int64 `protobuf:"varint,5,opt,name=unconfirmTxAmount,proto3" json:"unconfirmTxAmount,omitempty"`
	// max block size
	MaxBlockSize int64 `protobuf:"varint,6,opt,name=max_block_size,json=maxBlockSize,proto3" json:"max_block_size,omitempty"`
	// preset contracts
	ReservedContracts []*protos.InvokeRequest `protobuf:"bytes,7,rep,name=reserved_contracts,json=reservedContracts,proto3" json:"reserved_contracts,omitempty"`
	// reset forbidden contract configuration
	ForbiddenContract *protos.InvokeRequest `protobuf:"bytes,8,opt,name=forbidden_contract,json=forbiddenContract,proto3" json:"forbidden_contract,omitempty"`
	// the resource amount of creating an account
	NewAccountResourceAmount int64 `` /* 138-byte string literal not displayed */
	// 当前不可逆区块高度,与utxo对齐
	IrreversibleBlockHeight int64 `protobuf:"varint,10,opt,name=irreversibleBlockHeight,proto3" json:"irreversibleBlockHeight,omitempty"`
	// 当前不可逆区块高度调整窗口
	IrreversibleSlideWindow int64            `protobuf:"varint,11,opt,name=irreversibleSlideWindow,proto3" json:"irreversibleSlideWindow,omitempty"`
	GasPrice                *protos.GasPrice `protobuf:"bytes,12,opt,name=gasPrice,proto3" json:"gasPrice,omitempty"`
	// 群组合约相关
	GroupChainContract *protos.InvokeRequest `protobuf:"bytes,13,opt,name=group_chain_contract,json=groupChainContract,proto3" json:"group_chain_contract,omitempty"`
	// 出块奖励
	Award string `protobuf:"bytes,14,opt,name=award,proto3" json:"award,omitempty"`
	// 转账手续费
	TransferFeeAmount int64 `protobuf:"varint,15,opt,name=transfer_fee_amount,json=transferFeeAmount,proto3" json:"transfer_fee_amount,omitempty"`
	// contains filtered or unexported fields
}

Utxo metadata

func (*UtxoMeta) Descriptor deprecated

func (*UtxoMeta) Descriptor() ([]byte, []int)

Deprecated: Use UtxoMeta.ProtoReflect.Descriptor instead.

func (*UtxoMeta) GetAvgDelay

func (x *UtxoMeta) GetAvgDelay() int64

func (*UtxoMeta) GetAward

func (x *UtxoMeta) GetAward() string

func (*UtxoMeta) GetForbiddenContract

func (x *UtxoMeta) GetForbiddenContract() *protos.InvokeRequest

func (*UtxoMeta) GetGasPrice

func (x *UtxoMeta) GetGasPrice() *protos.GasPrice

func (*UtxoMeta) GetGroupChainContract

func (x *UtxoMeta) GetGroupChainContract() *protos.InvokeRequest

func (*UtxoMeta) GetIrreversibleBlockHeight

func (x *UtxoMeta) GetIrreversibleBlockHeight() int64

func (*UtxoMeta) GetIrreversibleSlideWindow

func (x *UtxoMeta) GetIrreversibleSlideWindow() int64

func (*UtxoMeta) GetLatestBlockid

func (x *UtxoMeta) GetLatestBlockid() []byte

func (*UtxoMeta) GetLockKeyList

func (x *UtxoMeta) GetLockKeyList() []string

func (*UtxoMeta) GetMaxBlockSize

func (x *UtxoMeta) GetMaxBlockSize() int64

func (*UtxoMeta) GetNewAccountResourceAmount

func (x *UtxoMeta) GetNewAccountResourceAmount() int64

func (*UtxoMeta) GetReservedContracts

func (x *UtxoMeta) GetReservedContracts() []*protos.InvokeRequest

func (*UtxoMeta) GetTransferFeeAmount

func (x *UtxoMeta) GetTransferFeeAmount() int64

func (*UtxoMeta) GetUnconfirmTxAmount

func (x *UtxoMeta) GetUnconfirmTxAmount() int64

func (*UtxoMeta) GetUtxoTotal

func (x *UtxoMeta) GetUtxoTotal() string

func (*UtxoMeta) ProtoMessage

func (*UtxoMeta) ProtoMessage()

func (*UtxoMeta) ProtoReflect

func (x *UtxoMeta) ProtoReflect() protoreflect.Message

func (*UtxoMeta) Reset

func (x *UtxoMeta) Reset()

func (*UtxoMeta) String

func (x *UtxoMeta) String() string

type UtxoOutput

type UtxoOutput struct {

	// utxo list
	UtxoList []*Utxo `protobuf:"bytes,1,rep,name=utxoList,proto3" json:"utxoList,omitempty"`
	// total selected amount
	TotalSelected string `protobuf:"bytes,2,opt,name=totalSelected,proto3" json:"totalSelected,omitempty"`
	// contains filtered or unexported fields
}

UtxoOutput query results

func (*UtxoOutput) Descriptor deprecated

func (*UtxoOutput) Descriptor() ([]byte, []int)

Deprecated: Use UtxoOutput.ProtoReflect.Descriptor instead.

func (*UtxoOutput) GetTotalSelected

func (x *UtxoOutput) GetTotalSelected() string

func (*UtxoOutput) GetUtxoList

func (x *UtxoOutput) GetUtxoList() []*Utxo

func (*UtxoOutput) ProtoMessage

func (*UtxoOutput) ProtoMessage()

func (*UtxoOutput) ProtoReflect

func (x *UtxoOutput) ProtoReflect() protoreflect.Message

func (*UtxoOutput) Reset

func (x *UtxoOutput) Reset()

func (*UtxoOutput) String

func (x *UtxoOutput) String() string

type UtxoRecord

type UtxoRecord struct {
	UtxoCount  string     `protobuf:"bytes,1,opt,name=utxoCount,proto3" json:"utxoCount,omitempty"`
	UtxoAmount string     `protobuf:"bytes,2,opt,name=utxoAmount,proto3" json:"utxoAmount,omitempty"`
	Item       []*UtxoKey `protobuf:"bytes,3,rep,name=item,proto3" json:"item,omitempty"`
	// contains filtered or unexported fields
}

func (*UtxoRecord) Descriptor deprecated

func (*UtxoRecord) Descriptor() ([]byte, []int)

Deprecated: Use UtxoRecord.ProtoReflect.Descriptor instead.

func (*UtxoRecord) GetItem

func (x *UtxoRecord) GetItem() []*UtxoKey

func (*UtxoRecord) GetUtxoAmount

func (x *UtxoRecord) GetUtxoAmount() string

func (*UtxoRecord) GetUtxoCount

func (x *UtxoRecord) GetUtxoCount() string

func (*UtxoRecord) ProtoMessage

func (*UtxoRecord) ProtoMessage()

func (*UtxoRecord) ProtoReflect

func (x *UtxoRecord) ProtoReflect() protoreflect.Message

func (*UtxoRecord) Reset

func (x *UtxoRecord) Reset()

func (*UtxoRecord) String

func (x *UtxoRecord) String() string

type UtxoRecordDetail

type UtxoRecordDetail struct {
	OpenUtxo   *UtxoRecord `protobuf:"bytes,1,opt,name=openUtxo,proto3" json:"openUtxo,omitempty"`
	LockedUtxo *UtxoRecord `protobuf:"bytes,2,opt,name=lockedUtxo,proto3" json:"lockedUtxo,omitempty"`
	FrozenUtxo *UtxoRecord `protobuf:"bytes,3,opt,name=frozenUtxo,proto3" json:"frozenUtxo,omitempty"`
	// contains filtered or unexported fields
}

func (*UtxoRecordDetail) Descriptor deprecated

func (*UtxoRecordDetail) Descriptor() ([]byte, []int)

Deprecated: Use UtxoRecordDetail.ProtoReflect.Descriptor instead.

func (*UtxoRecordDetail) GetFrozenUtxo

func (x *UtxoRecordDetail) GetFrozenUtxo() *UtxoRecord

func (*UtxoRecordDetail) GetLockedUtxo

func (x *UtxoRecordDetail) GetLockedUtxo() *UtxoRecord

func (*UtxoRecordDetail) GetOpenUtxo

func (x *UtxoRecordDetail) GetOpenUtxo() *UtxoRecord

func (*UtxoRecordDetail) ProtoMessage

func (*UtxoRecordDetail) ProtoMessage()

func (*UtxoRecordDetail) ProtoReflect

func (x *UtxoRecordDetail) ProtoReflect() protoreflect.Message

func (*UtxoRecordDetail) Reset

func (x *UtxoRecordDetail) Reset()

func (*UtxoRecordDetail) String

func (x *UtxoRecordDetail) String() string

type XuperSignature

type XuperSignature struct {
	PublicKeys [][]byte `protobuf:"bytes,1,rep,name=public_keys,json=publicKeys,proto3" json:"public_keys,omitempty"`
	Signature  []byte   `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"`
	// contains filtered or unexported fields
}

Unified Xuper Signature

func (*XuperSignature) Descriptor deprecated

func (*XuperSignature) Descriptor() ([]byte, []int)

Deprecated: Use XuperSignature.ProtoReflect.Descriptor instead.

func (*XuperSignature) GetPublicKeys

func (x *XuperSignature) GetPublicKeys() [][]byte

func (*XuperSignature) GetSignature

func (x *XuperSignature) GetSignature() []byte

func (*XuperSignature) ProtoMessage

func (*XuperSignature) ProtoMessage()

func (*XuperSignature) ProtoReflect

func (x *XuperSignature) ProtoReflect() protoreflect.Message

func (*XuperSignature) Reset

func (x *XuperSignature) Reset()

func (*XuperSignature) String

func (x *XuperSignature) String() string

Jump to

Keyboard shortcuts

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