package types
|
|
|
|
import cmn "github.com/tendermint/tmlibs/common"
|
|
|
|
// nondeterministic
|
|
type ResultException struct {
|
|
Error string `json:"error,omitempty"`
|
|
}
|
|
|
|
type ResultEcho struct {
|
|
Message string `json:"message,omitempty"`
|
|
}
|
|
|
|
type ResultFlush struct {
|
|
}
|
|
|
|
type ResultInfo struct {
|
|
Data string `json:"data,omitempty"`
|
|
Version string `json:"version,omitempty"`
|
|
LastBlockHeight int64 `json:"last_block_height,omitempty"`
|
|
LastBlockAppHash []byte `json:"last_block_app_hash,omitempty"`
|
|
}
|
|
|
|
func FromResultInfo(res ResultInfo) ResponseInfo {
|
|
return ResponseInfo(res)
|
|
}
|
|
|
|
type ResultSetOption struct {
|
|
Code uint32 `json:"code,omitempty"`
|
|
// bytes data = 2;
|
|
Log string `json:"log,omitempty"`
|
|
Info string `json:"info,omitempty"`
|
|
}
|
|
|
|
func FromResultSetOption(res ResultSetOption) ResponseSetOption {
|
|
return ResponseSetOption(res)
|
|
}
|
|
|
|
type ResultInitChain struct {
|
|
Validators []Validator `json:"validators"`
|
|
}
|
|
|
|
func FromResultInitChain(res ResultInitChain) ResponseInitChain {
|
|
vals := valsToPointers(res.Validators)
|
|
return ResponseInitChain{
|
|
Validators: vals,
|
|
}
|
|
}
|
|
|
|
type ResultQuery struct {
|
|
Code uint32 `json:"code,omitempty"`
|
|
// bytes data = 2; // use "value" instead.
|
|
Log string `json:"log,omitempty"`
|
|
Info string `json:"info,omitempty"`
|
|
Index int64 `json:"index,omitempty"`
|
|
Key []byte `json:"key,omitempty"`
|
|
Value []byte `json:"value,omitempty"`
|
|
Proof []byte `json:"proof,omitempty"`
|
|
Height int64 `json:"height,omitempty"`
|
|
}
|
|
|
|
func FromResultQuery(res ResultQuery) ResponseQuery {
|
|
return ResponseQuery(res)
|
|
}
|
|
|
|
type ResultBeginBlock struct {
|
|
Tags []cmn.KVPair `json:"tags,omitempty"`
|
|
}
|
|
|
|
func FromResultBeginBlock(res ResultBeginBlock) ResponseBeginBlock {
|
|
tags := tagsToPointers(res.Tags)
|
|
return ResponseBeginBlock{
|
|
Tags: tags,
|
|
}
|
|
}
|
|
|
|
type ResultCheckTx struct {
|
|
Code uint32 `json:"code,omitempty"`
|
|
Data []byte `json:"data,omitempty"`
|
|
Log string `json:"log,omitempty"`
|
|
Info string `json:"info,omitempty"`
|
|
GasWanted int64 `json:"gas_wanted,omitempty"`
|
|
GasUsed int64 `json:"gas_used,omitempty"`
|
|
Tags []cmn.KVPair `json:"tags,omitempty"`
|
|
Fee cmn.KI64Pair `json:"fee"`
|
|
}
|
|
|
|
func FromResultCheckTx(res ResultCheckTx) ResponseCheckTx {
|
|
tags := tagsToPointers(res.Tags)
|
|
return ResponseCheckTx{
|
|
Code: res.Code,
|
|
Data: res.Data,
|
|
Log: res.Log,
|
|
Info: res.Info,
|
|
GasWanted: res.GasWanted,
|
|
GasUsed: res.GasUsed,
|
|
Tags: tags,
|
|
Fee: &res.Fee,
|
|
}
|
|
}
|
|
|
|
type ResultDeliverTx struct {
|
|
Code uint32 `json:"code,omitempty"`
|
|
Data []byte `json:"data,omitempty"`
|
|
Log string `json:"log,omitempty"`
|
|
Info string `json:"info,omitempty"`
|
|
GasWanted int64 `json:"gas_wanted,omitempty"`
|
|
GasUsed int64 `json:"gas_used,omitempty"`
|
|
Tags []cmn.KVPair `json:"tags,omitempty"`
|
|
Fee cmn.KI64Pair `json:"fee"`
|
|
}
|
|
|
|
func FromResultDeliverTx(res ResultDeliverTx) ResponseDeliverTx {
|
|
tags := tagsToPointers(res.Tags)
|
|
return ResponseDeliverTx{
|
|
Code: res.Code,
|
|
Data: res.Data,
|
|
Log: res.Log,
|
|
Info: res.Info,
|
|
GasWanted: res.GasWanted,
|
|
GasUsed: res.GasUsed,
|
|
Tags: tags,
|
|
Fee: &res.Fee,
|
|
}
|
|
}
|
|
|
|
type ResultEndBlock struct {
|
|
ValidatorUpdates []Validator `json:"validator_updates"`
|
|
ConsensusParamUpdates *ConsensusParams `json:"consensus_param_updates,omitempty"`
|
|
Tags []cmn.KVPair `json:"tags,omitempty"`
|
|
}
|
|
|
|
func FromResultEndBlock(res ResultEndBlock) ResponseEndBlock {
|
|
tags := tagsToPointers(res.Tags)
|
|
vals := valsToPointers(res.ValidatorUpdates)
|
|
return ResponseEndBlock{
|
|
ValidatorUpdates: vals,
|
|
ConsensusParamUpdates: res.ConsensusParamUpdates,
|
|
Tags: tags,
|
|
}
|
|
}
|
|
|
|
type ResultCommit struct {
|
|
// reserve 1
|
|
Data []byte `json:"data,omitempty"`
|
|
}
|
|
|
|
func FromResultCommit(res ResultCommit) ResponseCommit {
|
|
return ResponseCommit(res)
|
|
}
|
|
|
|
//-------------------------------------------------------
|
|
|
|
func tagsToPointers(tags []cmn.KVPair) []*cmn.KVPair {
|
|
tagPtrs := make([]*cmn.KVPair, len(tags))
|
|
for i := 0; i < len(tags); i++ {
|
|
t := tags[i]
|
|
tagPtrs[i] = &t
|
|
}
|
|
return tagPtrs
|
|
}
|
|
|
|
func valsToPointers(vals []Validator) []*Validator {
|
|
valPtrs := make([]*Validator, len(vals))
|
|
for i := 0; i < len(vals); i++ {
|
|
v := vals[i]
|
|
valPtrs[i] = &v
|
|
}
|
|
return valPtrs
|
|
}
|