- package http
-
- // The types in this file define the JSON encoding for RPC method parameters
- // from the client to the server.
-
- import (
- "encoding/json"
-
- "github.com/tendermint/tendermint/internal/jsontypes"
- "github.com/tendermint/tendermint/libs/bytes"
- "github.com/tendermint/tendermint/types"
- )
-
- type abciQueryArgs struct {
- Path string `json:"path"`
- Data bytes.HexBytes `json:"data"`
- Height int64 `json:"height,string"`
- Prove bool `json:"prove"`
- }
-
- type txArgs struct {
- Tx []byte `json:"tx"`
- }
-
- type txKeyArgs struct {
- TxKey []byte `json:"tx_key"`
- }
-
- type unconfirmedArgs struct {
- Limit *int `json:"limit,string,omitempty"`
- }
-
- type heightArgs struct {
- Height *int64 `json:"height,string,omitempty"`
- }
-
- type hashArgs struct {
- Hash bytes.HexBytes `json:"hash"`
- Prove bool `json:"prove,omitempty"`
- }
-
- type blockchainInfoArgs struct {
- MinHeight int64 `json:"minHeight,string"`
- MaxHeight int64 `json:"maxHeight,string"`
- }
-
- type genesisChunkArgs struct {
- Chunk uint `json:"chunk,string"`
- }
-
- type searchArgs struct {
- Query string `json:"query"`
- Prove bool `json:"prove,omitempty"`
- OrderBy string `json:"order_by,omitempty"`
- Page *int `json:"page,string,omitempty"`
- PerPage *int `json:"per_page,string,omitempty"`
- }
-
- type validatorArgs struct {
- Height *int64 `json:"height,string,omitempty"`
- Page *int `json:"page,string,omitempty"`
- PerPage *int `json:"per_page,string,omitempty"`
- }
-
- type evidenceArgs struct {
- Evidence types.Evidence
- }
-
- // MarshalJSON implements json.Marshaler to encode the evidence using the
- // wrapped concrete type of the implementation.
- func (e evidenceArgs) MarshalJSON() ([]byte, error) {
- ev, err := jsontypes.Marshal(e.Evidence)
- if err != nil {
- return nil, err
- }
- return json.Marshal(struct {
- Evidence json.RawMessage `json:"evidence"`
- }{Evidence: ev})
- }
|