Documentation ¶
Index ¶
- Constants
- Variables
- func ParseTx(cdc *amino.Codec, txBytes []byte) (tx.Tx, error)
- func ValidateABCIData(data libbytes.HexBytes) error
- func ValidateABCIPath(path string) error
- func ValidateABCIQueryStr(query string) error
- func ValidateDepthLevel(level int) error
- func ValidateHash(hash []byte) error
- func ValidateHeight(height *int64) error
- func ValidateHeightRange(from int64, to int64) error
- func ValidateLimit(limit int) error
- func ValidateOffset(offset int) error
- func ValidatePair(pair string) error
- func ValidateSymbol(symbol string) error
- func ValidateTx(tx types.Tx) error
- func ValidateTxSearchQueryStr(query string) error
- func ValidateUnConfirmedTxsLimit(limit int) error
- type ABCIClient
- type ABCIResponses
- type Client
- type DexClient
- type EventsClient
- type HTTP
- func (c *HTTP) ABCIInfo() (*ctypes.ResultABCIInfo, error)
- func (c *HTTP) ABCIQuery(path string, data libbytes.HexBytes) (*ctypes.ResultABCIQuery, error)
- func (c *HTTP) ABCIQueryWithOptions(path string, data libbytes.HexBytes, opts client.ABCIQueryOptions) (*ctypes.ResultABCIQuery, error)
- func (c *HTTP) Block(height *int64) (*ctypes.ResultBlock, error)
- func (c *HTTP) BlockResults(height *int64) (*ResultBlockResults, error)
- func (c *HTTP) BlockchainInfo(minHeight, maxHeight int64) (*ctypes.ResultBlockchainInfo, error)
- func (c *HTTP) BroadcastTxAsync(tx types.Tx) (*ctypes.ResultBroadcastTx, error)
- func (c *HTTP) BroadcastTxCommit(tx types.Tx) (*ResultBroadcastTxCommit, error)
- func (c *HTTP) BroadcastTxSync(tx types.Tx) (*ctypes.ResultBroadcastTx, error)
- func (c *HTTP) CancelOrder(baseAssetSymbol, quoteAssetSymbol, refId string, syncType SyncType, ...) (*core_types.ResultBroadcastTx, error)
- func (c *HTTP) ClaimHTLT(swapID []byte, randomNumber []byte, syncType SyncType, options ...tx.Option) (*core_types.ResultBroadcastTx, error)
- func (c *HTTP) Commit(height *int64) (*ctypes.ResultCommit, error)
- func (c *HTTP) ConsensusState() (*ctypes.ResultConsensusState, error)
- func (c *HTTP) CreateOrder(baseAssetSymbol, quoteAssetSymbol string, op int8, price, quantity int64, ...) (*core_types.ResultBroadcastTx, error)
- func (c *HTTP) DepositHTLT(recipient types.AccAddress, swapID []byte, amount types.Coins, ...) (*core_types.ResultBroadcastTx, error)
- func (c *HTTP) DumpConsensusState() (*ctypes.ResultDumpConsensusState, error)
- func (c *HTTP) Genesis() (*ctypes.ResultGenesis, error)
- func (c *HTTP) GetAccount(addr types.AccAddress) (acc types.Account, err error)
- func (c *HTTP) GetBalance(addr types.AccAddress, symbol string) (*types.TokenBalance, error)
- func (c *HTTP) GetBalances(addr types.AccAddress) ([]types.TokenBalance, error)
- func (c *HTTP) GetCommitAccount(addr types.AccAddress) (acc types.Account, err error)
- func (c *HTTP) GetDelegatorUnbondingDelegations(delegatorAddr types.AccAddress) ([]types.UnbondingDelegation, error)
- func (c *HTTP) GetDepth(tradePair string, level int) (*types.OrderBook, error)
- func (c *HTTP) GetFee() ([]types.FeeParam, error)
- func (c *HTTP) GetOpenOrders(addr types.AccAddress, pair string) ([]types.OpenOrder, error)
- func (c *HTTP) GetProposal(proposalId int64) (types.Proposal, error)
- func (c *HTTP) GetProposals(status types.ProposalStatus, numLatest int64) ([]types.Proposal, error)
- func (c *HTTP) GetStakeValidators() ([]types.Validator, error)
- func (c *HTTP) GetSwapByCreator(creatorAddr string, offset int64, limit int64) ([]types.SwapBytes, error)
- func (c *HTTP) GetSwapByID(swapID types.SwapBytes) (types.AtomicSwap, error)
- func (c *HTTP) GetSwapByRecipient(recipientAddr string, offset int64, limit int64) ([]types.SwapBytes, error)
- func (c *HTTP) GetTimelock(addr types.AccAddress, recordID int64) (*types.TimeLockRecord, error)
- func (c *HTTP) GetTimelocks(addr types.AccAddress) ([]types.TimeLockRecord, error)
- func (c *HTTP) GetTokenInfo(symbol string) (*types.Token, error)
- func (c *HTTP) GetTradingPairs(offset int, limit int) ([]types.TradingPair, error)
- func (c *HTTP) HTLT(recipient types.AccAddress, recipientOtherChain, senderOtherChain string, ...) (*core_types.ResultBroadcastTx, error)
- func (c *HTTP) Health() (*ctypes.ResultHealth, error)
- func (c *HTTP) IsActive() bool
- func (c *HTTP) ListAllTokens(offset int, limit int) ([]types.Token, error)
- func (c *HTTP) NetInfo() (*ctypes.ResultNetInfo, error)
- func (c *HTTP) NumUnconfirmedTxs() (*ctypes.ResultUnconfirmedTxs, error)
- func (c *HTTP) QueryStore(key libbytes.HexBytes, storeName string) ([]byte, error)
- func (c *HTTP) RefundHTLT(swapID []byte, syncType SyncType, options ...tx.Option) (*core_types.ResultBroadcastTx, error)
- func (c *HTTP) SendToken(transfers []msg.Transfer, syncType SyncType, options ...tx.Option) (*core_types.ResultBroadcastTx, error)
- func (c *HTTP) SetKeyManager(k keys.KeyManager)
- func (c *HTTP) Status() (*ctypes.ResultStatus, error)
- func (c *HTTP) Tx(hash []byte, prove bool) (*ResultTx, error)
- func (c *HTTP) TxInfoSearch(query string, prove bool, page, perPage int) ([]Info, error)
- func (c *HTTP) TxSearch(query string, prove bool, page, perPage int) (*ResultTxSearch, error)
- func (c *HTTP) UnconfirmedTxs(limit int) (*ctypes.ResultUnconfirmedTxs, error)
- func (c *HTTP) Validators(height *int64) (*ctypes.ResultValidators, error)
- type Info
- type OpsClient
- type ResponseBeginBlock
- type ResponseCheckTx
- type ResponseDeliverTx
- type ResponseEndBlock
- type ResultBlockResults
- type ResultBroadcastTxCommit
- type ResultTx
- type ResultTxSearch
- type SignClient
- type SyncType
- type WSClient
- func (c *WSClient) ABCIInfo(ctx context.Context, id rpctypes.JSONRPCStringID) error
- func (c *WSClient) ABCIQueryWithOptions(ctx context.Context, id rpctypes.JSONRPCStringID, path string, ...) error
- func (c *WSClient) Block(ctx context.Context, id rpctypes.JSONRPCStringID, height *int64) error
- func (c *WSClient) BlockResults(ctx context.Context, id rpctypes.JSONRPCStringID, height *int64) error
- func (c *WSClient) BlockchainInfo(ctx context.Context, id rpctypes.JSONRPCStringID, minHeight, maxHeight int64) error
- func (c *WSClient) BroadcastTx(ctx context.Context, id rpctypes.JSONRPCStringID, route string, tx types.Tx) error
- func (c *WSClient) BroadcastTxCommit(ctx context.Context, id rpctypes.JSONRPCStringID, tx types.Tx) error
- func (c *WSClient) Call(ctx context.Context, method string, id rpctypes.JSONRPCStringID, ...) error
- func (c *WSClient) Codec() *amino.Codec
- func (c *WSClient) Commit(ctx context.Context, id rpctypes.JSONRPCStringID, height *int64) error
- func (c *WSClient) ConsensusState(ctx context.Context, id rpctypes.JSONRPCStringID) error
- func (c *WSClient) DumpConsensusState(ctx context.Context, id rpctypes.JSONRPCStringID) error
- func (c *WSClient) GenRequestId() (rpctypes.JSONRPCStringID, error)
- func (c *WSClient) Genesis(ctx context.Context, id rpctypes.JSONRPCStringID) error
- func (c *WSClient) Health(ctx context.Context, id rpctypes.JSONRPCStringID) error
- func (c *WSClient) IsActive() bool
- func (c *WSClient) IsDialing() bool
- func (c *WSClient) NetInfo(ctx context.Context, id rpctypes.JSONRPCStringID) error
- func (c *WSClient) NumUnconfirmedTxs(ctx context.Context, id rpctypes.JSONRPCStringID) error
- func (c *WSClient) OnStart() error
- func (c *WSClient) OnStop()
- func (c *WSClient) Send(ctx context.Context, request rpctypes.RPCRequest) error
- func (c *WSClient) SetCodec(cdc *amino.Codec)
- func (c *WSClient) Status(ctx context.Context, id rpctypes.JSONRPCStringID) error
- func (c *WSClient) String() string
- func (c *WSClient) Subscribe(ctx context.Context, id rpctypes.JSONRPCStringID, query string) error
- func (c *WSClient) Tx(ctx context.Context, id rpctypes.JSONRPCStringID, hash []byte, prove bool) error
- func (c *WSClient) TxSearch(ctx context.Context, id rpctypes.JSONRPCStringID, query string, prove bool, ...) error
- func (c *WSClient) UnconfirmedTxs(ctx context.Context, id rpctypes.JSONRPCStringID, limit int) error
- func (c *WSClient) Unsubscribe(ctx context.Context, id rpctypes.JSONRPCStringID, query string) error
- func (c *WSClient) UnsubscribeAll(ctx context.Context, id rpctypes.JSONRPCStringID) error
- func (c *WSClient) Validators(ctx context.Context, id rpctypes.JSONRPCStringID, height *int64) error
- type WSEvents
- func (w *WSEvents) ABCIInfo() (*ctypes.ResultABCIInfo, error)
- func (w *WSEvents) ABCIQueryWithOptions(path string, data libbytes.HexBytes, opts client.ABCIQueryOptions) (*ctypes.ResultABCIQuery, error)
- func (w *WSEvents) Block(height *int64) (*ctypes.ResultBlock, error)
- func (w *WSEvents) BlockResults(height *int64) (*ResultBlockResults, error)
- func (w *WSEvents) BlockchainInfo(minHeight, maxHeight int64) (*ctypes.ResultBlockchainInfo, error)
- func (w *WSEvents) BroadcastTx(route string, tx types.Tx) (*ctypes.ResultBroadcastTx, error)
- func (w *WSEvents) BroadcastTxCommit(tx types.Tx) (*ResultBroadcastTxCommit, error)
- func (w *WSEvents) Commit(height *int64) (*ctypes.ResultCommit, error)
- func (w *WSEvents) ConsensusState() (*ctypes.ResultConsensusState, error)
- func (w *WSEvents) DumpConsensusState() (*ctypes.ResultDumpConsensusState, error)
- func (w *WSEvents) Genesis() (*ctypes.ResultGenesis, error)
- func (w *WSEvents) Health() (*ctypes.ResultHealth, error)
- func (c *WSEvents) IsActive() bool
- func (w *WSEvents) NetInfo() (*ctypes.ResultNetInfo, error)
- func (w *WSEvents) NewContext() (context.Context, context.CancelFunc)
- func (w *WSEvents) NumUnconfirmedTxs() (*ctypes.ResultUnconfirmedTxs, error)
- func (w *WSEvents) OnStart() error
- func (w *WSEvents) OnStop()
- func (w *WSEvents) PendingRequest() int
- func (w *WSEvents) SetLogger(logger log.Logger)
- func (w *WSEvents) SetTimeOut(timeout time.Duration)
- func (w *WSEvents) SimpleCall(doRpc func(ctx context.Context, id rpctypes.JSONRPCStringID) error, ...) error
- func (w *WSEvents) Status() (*ctypes.ResultStatus, error)
- func (w *WSEvents) Subscribe(query string, outCapacity ...int) (out chan ctypes.ResultEvent, err error)
- func (w *WSEvents) Tx(hash []byte, prove bool) (*ResultTx, error)
- func (w *WSEvents) TxInfoSearch(query string, prove bool, page, perPage int) ([]Info, error)
- func (w *WSEvents) TxSearch(query string, prove bool, page, perPage int) (*ResultTxSearch, error)
- func (w *WSEvents) UnconfirmedTxs(limit int) (*ctypes.ResultUnconfirmedTxs, error)
- func (w *WSEvents) Unsubscribe(query string) error
- func (w *WSEvents) UnsubscribeAll() error
- func (w *WSEvents) Validators(height *int64) (*ctypes.ResultValidators, error)
- func (w *WSEvents) WaitForEventResponse(requestId interface{}, in chan rpctypes.RPCResponse, ...)
- func (w *WSEvents) WaitForResponse(ctx context.Context, outChan chan rpctypes.RPCResponse, result interface{}, ...) error
Constants ¶
const ( AccountStoreName = "acc" ParamABCIPrefix = "param" TimeLockMsgRoute = "timelock" AtomicSwapStoreName = "atomic_swap" TimeLockrcNotFoundErrorCode = 458760 )
const (
EmptyRequest = rpctypes.JSONRPCStringID("")
)
Variables ¶
var ( ExceedABCIPathLengthError = fmt.Errorf("the abci path exceed max length %d ", maxABCIPathLength) ExceedABCIDataLengthError = fmt.Errorf("the abci data exceed max length %d ", maxABCIDataLength) ExceedTxLengthError = fmt.Errorf("the tx data exceed max length %d ", maxTxLength) LimitNegativeError = fmt.Errorf("the limit can't be negative") ExceedMaxUnConfirmedTxsNumError = fmt.Errorf("the limit of unConfirmed tx exceed max limit %d ", maxUnConfirmedTxs) HeightNegativeError = fmt.Errorf("the height can't be negative") MaxMinHeightConflictError = fmt.Errorf("the min height can't be larger than max height") HashLengthError = fmt.Errorf("the length of hash is not 32") ExceedABCIQueryStrLengthError = fmt.Errorf("the query string exceed max length %d ", maxABCIPathLength) ExceedTxSearchQueryStrLengthError = fmt.Errorf("the query string exceed max length %d ", maxTxSearchStrLength) OffsetNegativeError = fmt.Errorf("offset can't be less than 0") SymbolLengthExceedRangeError = fmt.Errorf("length of symbol should be in range [%d,%d]", tokenSymbolMinLen, tokenSymbolMaxLen) PairFormatError = fmt.Errorf("the pair should in format 'symbol1_symbol2'") DepthLevelExceedRangeError = fmt.Errorf("the level is out of range [%d, %d]", 0, maxDepthLevel) KeyMissingError = fmt.Errorf("BaseAssetSymbol or QuoteAssetSymbol is missing. ") )
var DefaultTimeout = 5 * time.Second
Functions ¶
func ValidateABCIData ¶
func ValidateABCIPath ¶
func ValidateABCIQueryStr ¶
func ValidateDepthLevel ¶
func ValidateHash ¶
func ValidateHeight ¶
func ValidateHeightRange ¶
func ValidateLimit ¶
func ValidateOffset ¶
func ValidatePair ¶
func ValidateSymbol ¶
func ValidateTx ¶
Types ¶
type ABCIClient ¶
type ABCIClient interface { // Reading from abci app ABCIInfo() (*ctypes.ResultABCIInfo, error) ABCIQuery(path string, data libbytes.HexBytes) (*ctypes.ResultABCIQuery, error) ABCIQueryWithOptions(path string, data libbytes.HexBytes, opts client.ABCIQueryOptions) (*ctypes.ResultABCIQuery, error) // Writing to abci app BroadcastTxCommit(tx types.Tx) (*ResultBroadcastTxCommit, error) BroadcastTxAsync(tx types.Tx) (*ctypes.ResultBroadcastTx, error) BroadcastTxSync(tx types.Tx) (*ctypes.ResultBroadcastTx, error) }
type ABCIResponses ¶
type ABCIResponses struct { DeliverTx []*ResponseDeliverTx `json:"DeliverTx"` EndBlock *ResponseEndBlock `json:"EndBlock"` BeginBlock *ResponseBeginBlock `json:"BeginBlock"` }
type Client ¶
type Client interface { libservice.Service ABCIClient SignClient client.HistoryClient client.StatusClient EventsClient DexClient OpsClient }
type DexClient ¶
type DexClient interface { TxInfoSearch(query string, prove bool, page, perPage int) ([]Info, error) ListAllTokens(offset int, limit int) ([]types.Token, error) GetTokenInfo(symbol string) (*types.Token, error) GetAccount(addr types.AccAddress) (acc types.Account, err error) GetCommitAccount(addr types.AccAddress) (acc types.Account, err error) GetBalances(addr types.AccAddress) ([]types.TokenBalance, error) GetBalance(addr types.AccAddress, symbol string) (*types.TokenBalance, error) GetFee() ([]types.FeeParam, error) GetOpenOrders(addr types.AccAddress, pair string) ([]types.OpenOrder, error) GetTradingPairs(offset int, limit int) ([]types.TradingPair, error) GetDepth(tradePair string, level int) (*types.OrderBook, error) GetProposals(status types.ProposalStatus, numLatest int64) ([]types.Proposal, error) GetProposal(proposalId int64) (types.Proposal, error) GetTimelocks(addr types.AccAddress) ([]types.TimeLockRecord, error) GetTimelock(addr types.AccAddress, recordID int64) (*types.TimeLockRecord, error) GetSwapByID(swapID types.SwapBytes) (types.AtomicSwap, error) GetSwapByCreator(creatorAddr string, offset int64, limit int64) ([]types.SwapBytes, error) GetSwapByRecipient(recipientAddr string, offset int64, limit int64) ([]types.SwapBytes, error) SetKeyManager(k keys.KeyManager) SendToken(transfers []msg.Transfer, syncType SyncType, options ...tx.Option) (*core_types.ResultBroadcastTx, error) CreateOrder(baseAssetSymbol, quoteAssetSymbol string, op int8, price, quantity int64, syncType SyncType, options ...tx.Option) (*core_types.ResultBroadcastTx, error) CancelOrder(baseAssetSymbol, quoteAssetSymbol, refId string, syncType SyncType, options ...tx.Option) (*core_types.ResultBroadcastTx, error) HTLT(recipient types.AccAddress, recipientOtherChain, senderOtherChain string, randomNumberHash []byte, timestamp int64, amount types.Coins, expectedIncome string, heightSpan int64, crossChain bool, syncType SyncType, options ...tx.Option) (*core_types.ResultBroadcastTx, error) DepositHTLT(recipient types.AccAddress, swapID []byte, amount types.Coins, syncType SyncType, options ...tx.Option) (*core_types.ResultBroadcastTx, error) ClaimHTLT(swapID []byte, randomNumber []byte, syncType SyncType, options ...tx.Option) (*core_types.ResultBroadcastTx, error) RefundHTLT(swapID []byte, syncType SyncType, options ...tx.Option) (*core_types.ResultBroadcastTx, error) }
type EventsClient ¶
type HTTP ¶
type HTTP struct { *WSEvents // contains filtered or unexported fields }
func NewHTTP ¶
NewHTTP takes a remote endpoint in the form tcp://<host>:<port> and the websocket path (which always seems to be "/websocket")
func NewRPCClient ¶
func NewRPCClient(nodeURI string, network ntypes.ChainNetwork) *HTTP
func (*HTTP) ABCIQueryWithOptions ¶
func (c *HTTP) ABCIQueryWithOptions(path string, data libbytes.HexBytes, opts client.ABCIQueryOptions) (*ctypes.ResultABCIQuery, error)
func (*HTTP) BlockResults ¶
func (c *HTTP) BlockResults(height *int64) (*ResultBlockResults, error)
func (*HTTP) BlockchainInfo ¶
func (c *HTTP) BlockchainInfo(minHeight, maxHeight int64) (*ctypes.ResultBlockchainInfo, error)
func (*HTTP) BroadcastTxAsync ¶
func (*HTTP) BroadcastTxCommit ¶
func (c *HTTP) BroadcastTxCommit(tx types.Tx) (*ResultBroadcastTxCommit, error)
func (*HTTP) BroadcastTxSync ¶
func (*HTTP) CancelOrder ¶
func (c *HTTP) CancelOrder(baseAssetSymbol, quoteAssetSymbol, refId string, syncType SyncType, options ...tx.Option) (*core_types.ResultBroadcastTx, error)
func (*HTTP) ClaimHTLT ¶
func (c *HTTP) ClaimHTLT(swapID []byte, randomNumber []byte, syncType SyncType, options ...tx.Option) (*core_types.ResultBroadcastTx, error)
func (*HTTP) ConsensusState ¶
func (c *HTTP) ConsensusState() (*ctypes.ResultConsensusState, error)
func (*HTTP) CreateOrder ¶
func (c *HTTP) CreateOrder(baseAssetSymbol, quoteAssetSymbol string, op int8, price, quantity int64, syncType SyncType, options ...tx.Option) (*core_types.ResultBroadcastTx, error)
func (*HTTP) DepositHTLT ¶
func (c *HTTP) DepositHTLT(recipient types.AccAddress, swapID []byte, amount types.Coins, syncType SyncType, options ...tx.Option) (*core_types.ResultBroadcastTx, error)
func (*HTTP) DumpConsensusState ¶
func (c *HTTP) DumpConsensusState() (*ctypes.ResultDumpConsensusState, error)
func (*HTTP) GetAccount ¶
Always fetch the latest account from the cache in node even the previous transaction from this account is not included in block yet. example: 1. AccountA(Balance: 10BNB, sequence: 1), AccountB(Balance: 5BNB, sequence: 1) 2. Node receive Tx(AccountA --> AccountB 2BNB) and check have passed, but not included in block yet. 3. GetAccount will return AccountA(Balance: 8BNB, sequence: 2), AccountB(Balance: 7BNB, sequence: 1)
func (*HTTP) GetBalance ¶
func (c *HTTP) GetBalance(addr types.AccAddress, symbol string) (*types.TokenBalance, error)
func (*HTTP) GetBalances ¶
func (c *HTTP) GetBalances(addr types.AccAddress) ([]types.TokenBalance, error)
func (*HTTP) GetCommitAccount ¶
Always fetch the account from the commit store at (currentHeight-1) in node. example: 1. currentCommitHeight: 1000, accountA(balance: 10BNB, sequence: 10) 2. height: 999, accountA(balance: 11BNB, sequence: 9) 3. GetCommitAccount will return accountA(balance: 11BNB, sequence: 9). If the (currentHeight-1) do not exist, will return account at currentHeight. 1. currentCommitHeight: 1000, accountA(balance: 10BNB, sequence: 10) 2. height: 999. the state do not exist 3. GetCommitAccount will return accountA(balance: 10BNB, sequence: 10).
func (*HTTP) GetDelegatorUnbondingDelegations ¶
func (c *HTTP) GetDelegatorUnbondingDelegations(delegatorAddr types.AccAddress) ([]types.UnbondingDelegation, error)
func (*HTTP) GetOpenOrders ¶
func (*HTTP) GetProposals ¶
func (*HTTP) GetSwapByCreator ¶
func (*HTTP) GetSwapByID ¶
func (*HTTP) GetSwapByRecipient ¶
func (*HTTP) GetTimelock ¶
func (c *HTTP) GetTimelock(addr types.AccAddress, recordID int64) (*types.TimeLockRecord, error)
func (*HTTP) GetTimelocks ¶
func (c *HTTP) GetTimelocks(addr types.AccAddress) ([]types.TimeLockRecord, error)
func (*HTTP) GetTradingPairs ¶
func (*HTTP) ListAllTokens ¶
func (*HTTP) NumUnconfirmedTxs ¶
func (c *HTTP) NumUnconfirmedTxs() (*ctypes.ResultUnconfirmedTxs, error)
func (*HTTP) QueryStore ¶
func (*HTTP) RefundHTLT ¶
func (c *HTTP) RefundHTLT(swapID []byte, syncType SyncType, options ...tx.Option) (*core_types.ResultBroadcastTx, error)
func (*HTTP) SendToken ¶
func (c *HTTP) SendToken(transfers []msg.Transfer, syncType SyncType, options ...tx.Option) (*core_types.ResultBroadcastTx, error)
func (*HTTP) SetKeyManager ¶
func (c *HTTP) SetKeyManager(k keys.KeyManager)
func (*HTTP) TxInfoSearch ¶
func (*HTTP) UnconfirmedTxs ¶
func (c *HTTP) UnconfirmedTxs(limit int) (*ctypes.ResultUnconfirmedTxs, error)
func (*HTTP) Validators ¶
func (c *HTTP) Validators(height *int64) (*ctypes.ResultValidators, error)
type Info ¶
type Info struct { Hash libbytes.HexBytes `json:"hash"` Height int64 `json:"height"` Tx tx.Tx `json:"tx"` Result ResponseDeliverTx `json:"result"` }
func FormatTxResults ¶
parse the indexed txs into an array of Info
type OpsClient ¶
type OpsClient interface { IsActive() bool GetStakeValidators() ([]types.Validator, error) GetDelegatorUnbondingDelegations(delegatorAddr types.AccAddress) ([]types.UnbondingDelegation, error) }
type ResponseBeginBlock ¶
type ResponseBeginBlock struct { Events []types.Event `json:"events,omitempty"` Tags []types.EventAttribute `json:"tags,omitempty"` }
type ResponseCheckTx ¶
type ResponseCheckTx 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"` Events []types.Event `json:"events,omitempty"` Tags []types.EventAttribute `json:"tags,omitempty"` Codespace string `json:"codespace,omitempty"` }
func (ResponseCheckTx) IsErr ¶
func (r ResponseCheckTx) IsErr() bool
type ResponseDeliverTx ¶
type ResponseDeliverTx 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"` Events []types.Event `json:"events,omitempty"` Tags []types.EventAttribute `json:"tags,omitempty"` Codespace string `json:"codespace,omitempty"` }
type ResponseEndBlock ¶
type ResponseEndBlock struct { ValidatorUpdates []types.ValidatorUpdate `json:"validator_updates"` ConsensusParamUpdates *types.ConsensusParams `json:"consensus_param_updates,omitempty"` Events []types.Event `json:"events,omitempty"` Tags []types.EventAttribute `json:"tags,omitempty"` }
type ResultBlockResults ¶
type ResultBlockResults struct { Height int64 `json:"height"` Results *ABCIResponses `json:"results"` }
type ResultBroadcastTxCommit ¶
type ResultBroadcastTxCommit struct { CheckTx ResponseCheckTx `json:"check_tx"` DeliverTx ResponseDeliverTx `json:"deliver_tx"` Hash libbytes.HexBytes `json:"hash"` Height int64 `json:"height"` }
type ResultTxSearch ¶
Result of searching for txs
type SignClient ¶
type SignClient interface { Block(height *int64) (*ctypes.ResultBlock, error) BlockResults(height *int64) (*ResultBlockResults, error) Commit(height *int64) (*ctypes.ResultCommit, error) Validators(height *int64) (*ctypes.ResultValidators, error) Tx(hash []byte, prove bool) (*ResultTx, error) TxSearch(query string, prove bool, page, perPage int) (*ResultTxSearch, error) }
type WSClient ¶
type WSClient struct { libservice.BaseService Address string // IP:PORT or /path/to/socket Endpoint string // /websocket/url/endpoint Dialer func(string, string) (net.Conn, error) // contains filtered or unexported fields }
WSClient is a WebSocket client. The methods of WSClient are safe for use by multiple goroutines.
func NewWSClient ¶
func NewWSClient(remoteAddr, endpoint string, responsesCh chan<- rpctypes.RPCResponse, options ...func(*WSClient)) *WSClient
NewWSClient returns a new client. See the commentary on the func(*WSClient) functions for a detailed description of how to configure ping period and pong wait time. The endpoint argument must begin with a `/`.
func (*WSClient) ABCIQueryWithOptions ¶
func (*WSClient) BlockResults ¶
func (*WSClient) BlockchainInfo ¶
func (*WSClient) BroadcastTx ¶
func (*WSClient) BroadcastTxCommit ¶
func (*WSClient) Call ¶
func (c *WSClient) Call(ctx context.Context, method string, id rpctypes.JSONRPCStringID, params map[string]interface{}) error
Call the given method. See Send description.
func (*WSClient) ConsensusState ¶
func (*WSClient) DumpConsensusState ¶
func (*WSClient) GenRequestId ¶
func (c *WSClient) GenRequestId() (rpctypes.JSONRPCStringID, error)
func (*WSClient) NumUnconfirmedTxs ¶
func (*WSClient) OnStart ¶
OnStart implements libservice.Service by dialing a server and creating read and write routines.
func (*WSClient) Send ¶
Send the given RPC request to the server. Results will be available on responsesCh, errors, if any, on ErrorsCh. Will block until send succeeds or ctx.Done is closed.
func (*WSClient) Subscribe ¶
Subscribe to a query. Note the server must have a "subscribe" route defined.
func (*WSClient) UnconfirmedTxs ¶
func (*WSClient) Unsubscribe ¶
func (c *WSClient) Unsubscribe(ctx context.Context, id rpctypes.JSONRPCStringID, query string) error
Unsubscribe from a query. Note the server must have a "unsubscribe" route defined.
func (*WSClient) UnsubscribeAll ¶
UnsubscribeAll from all. Note the server must have a "unsubscribe_all" route defined.
func (*WSClient) Validators ¶
type WSEvents ¶
type WSEvents struct { libservice.BaseService // contains filtered or unexported fields }
* websocket event stuff here... *
func (*WSEvents) ABCIQueryWithOptions ¶
func (w *WSEvents) ABCIQueryWithOptions(path string, data libbytes.HexBytes, opts client.ABCIQueryOptions) (*ctypes.ResultABCIQuery, error)
func (*WSEvents) BlockResults ¶
func (w *WSEvents) BlockResults(height *int64) (*ResultBlockResults, error)
func (*WSEvents) BlockchainInfo ¶
func (w *WSEvents) BlockchainInfo(minHeight, maxHeight int64) (*ctypes.ResultBlockchainInfo, error)
func (*WSEvents) BroadcastTx ¶
func (*WSEvents) BroadcastTxCommit ¶
func (w *WSEvents) BroadcastTxCommit(tx types.Tx) (*ResultBroadcastTxCommit, error)
func (*WSEvents) ConsensusState ¶
func (w *WSEvents) ConsensusState() (*ctypes.ResultConsensusState, error)
func (*WSEvents) DumpConsensusState ¶
func (w *WSEvents) DumpConsensusState() (*ctypes.ResultDumpConsensusState, error)
func (*WSEvents) NewContext ¶
func (w *WSEvents) NewContext() (context.Context, context.CancelFunc)
func (*WSEvents) NumUnconfirmedTxs ¶
func (w *WSEvents) NumUnconfirmedTxs() (*ctypes.ResultUnconfirmedTxs, error)
func (*WSEvents) OnStart ¶
OnStart implements libservice.Service by starting WSClient and event loop.
func (*WSEvents) OnStop ¶
func (w *WSEvents) OnStop()
OnStop implements libservice.Service by stopping WSClient.
func (*WSEvents) PendingRequest ¶
OnStop implements libservice.Service by stopping WSClient.
func (*WSEvents) SetTimeOut ¶
func (*WSEvents) SimpleCall ¶
func (*WSEvents) Subscribe ¶
func (w *WSEvents) Subscribe(query string, outCapacity ...int) (out chan ctypes.ResultEvent, err error)
Subscribe implements EventsClient by using WSClient to subscribe given subscriber to query. By default, returns a channel with cap=1. Error is returned if it fails to subscribe. Channel is never closed to prevent clients from seeing an erroneus event.
func (*WSEvents) TxInfoSearch ¶
func (*WSEvents) UnconfirmedTxs ¶
func (w *WSEvents) UnconfirmedTxs(limit int) (*ctypes.ResultUnconfirmedTxs, error)
func (*WSEvents) Unsubscribe ¶
Unsubscribe implements EventsClient by using WSClient to unsubscribe given subscriber from query.
func (*WSEvents) UnsubscribeAll ¶
UnsubscribeAll implements EventsClient by using WSClient to unsubscribe given subscriber from all the queries.
func (*WSEvents) Validators ¶
func (w *WSEvents) Validators(height *int64) (*ctypes.ResultValidators, error)
func (*WSEvents) WaitForEventResponse ¶
func (w *WSEvents) WaitForEventResponse(requestId interface{}, in chan rpctypes.RPCResponse, eventOut chan ctypes.ResultEvent, quit chan struct{})