rpctypes

package
v0.11.0 Latest Latest
Warning

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

Go to latest
Published: Sep 22, 2017 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func SocketType

func SocketType(listenAddr string) string

---------------------------------------- SOCKETS

Determine if its a unix or tcp socket. If tcp, must specify the port; `0.0.0.0` will return incorrectly as "unix" since there's no port TODO: deprecate

Types

type RPCError

type RPCError struct {
	Code    int    `json:"code"`
	Message string `json:"message"`
	Data    string `json:"data,omitempty"`
}

type RPCRequest

type RPCRequest struct {
	JSONRPC string           `json:"jsonrpc"`
	ID      string           `json:"id"`
	Method  string           `json:"method"`
	Params  *json.RawMessage `json:"params"` // must be map[string]interface{} or []interface{}
}

func ArrayToRequest

func ArrayToRequest(id string, method string, params []interface{}) (RPCRequest, error)

func MapToRequest

func MapToRequest(id string, method string, params map[string]interface{}) (RPCRequest, error)

func NewRPCRequest

func NewRPCRequest(id string, method string, params json.RawMessage) RPCRequest

func (RPCRequest) String

func (req RPCRequest) String() string

type RPCResponse

type RPCResponse struct {
	JSONRPC string           `json:"jsonrpc"`
	ID      string           `json:"id"`
	Result  *json.RawMessage `json:"result,omitempty"`
	Error   *RPCError        `json:"error,omitempty"`
}

func NewRPCErrorResponse

func NewRPCErrorResponse(id string, code int, msg string, data string) RPCResponse

func NewRPCSuccessResponse

func NewRPCSuccessResponse(id string, res interface{}) RPCResponse

func RPCInternalError

func RPCInternalError(id string, err error) RPCResponse

func RPCInvalidParamsError

func RPCInvalidParamsError(id string, err error) RPCResponse

func RPCInvalidRequestError

func RPCInvalidRequestError(id string, err error) RPCResponse

func RPCMethodNotFoundError

func RPCMethodNotFoundError(id string) RPCResponse

func RPCParseError

func RPCParseError(id string, err error) RPCResponse

func RPCServerError

func RPCServerError(id string, err error) RPCResponse

func (RPCResponse) String

func (resp RPCResponse) String() string

type WSRPCConnection

type WSRPCConnection interface {
	GetRemoteAddr() string
	GetEventSwitch() events.EventSwitch
	WriteRPCResponse(resp RPCResponse)
	TryWriteRPCResponse(resp RPCResponse) bool
}

*wsConnection implements this interface.

type WSRPCContext added in v0.10.0

type WSRPCContext struct {
	Request RPCRequest
	WSRPCConnection
}

websocket-only RPCFuncs take this as the first parameter.

Jump to

Keyboard shortcuts

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