- package types
-
- import (
- "io"
-
- "github.com/golang/protobuf/proto"
- "github.com/tendermint/go-wire"
- )
-
- func ToRequestEcho(message string) *Request {
- return &Request{
- Value: &Request_Echo{&RequestEcho{message}},
- }
- }
-
- func ToRequestFlush() *Request {
- return &Request{
- Value: &Request_Flush{&RequestFlush{}},
- }
- }
-
- func ToRequestInfo() *Request {
- return &Request{
- Value: &Request_Info{&RequestInfo{}},
- }
- }
-
- func ToRequestSetOption(key string, value string) *Request {
- return &Request{
- Value: &Request_SetOption{&RequestSetOption{key, value}},
- }
- }
-
- func ToRequestAppendTx(txBytes []byte) *Request {
- return &Request{
- Value: &Request_AppendTx{&RequestAppendTx{txBytes}},
- }
- }
-
- func ToRequestCheckTx(txBytes []byte) *Request {
- return &Request{
- Value: &Request_CheckTx{&RequestCheckTx{txBytes}},
- }
- }
-
- func ToRequestCommit() *Request {
- return &Request{
- Value: &Request_Commit{&RequestCommit{}},
- }
- }
-
- func ToRequestQuery(queryBytes []byte) *Request {
- return &Request{
- Value: &Request_Query{&RequestQuery{queryBytes}},
- }
- }
-
- func ToRequestInitChain(validators []*Validator) *Request {
- return &Request{
- Value: &Request_InitChain{&RequestInitChain{validators}},
- }
- }
-
- func ToRequestBeginBlock(height uint64) *Request {
- return &Request{
- Value: &Request_BeginBlock{&RequestBeginBlock{height}},
- }
- }
-
- func ToRequestEndBlock(height uint64) *Request {
- return &Request{
- Value: &Request_EndBlock{&RequestEndBlock{height}},
- }
- }
-
- //----------------------------------------
-
- func ToResponseException(errStr string) *Response {
- return &Response{
- Value: &Response_Exception{&ResponseException{errStr}},
- }
- }
-
- func ToResponseEcho(message string) *Response {
- return &Response{
- Value: &Response_Echo{&ResponseEcho{message}},
- }
- }
-
- func ToResponseFlush() *Response {
- return &Response{
- Value: &Response_Flush{&ResponseFlush{}},
- }
- }
-
- func ToResponseInfo(info string) *Response {
- return &Response{
- Value: &Response_Info{&ResponseInfo{info}},
- }
- }
-
- func ToResponseSetOption(log string) *Response {
- return &Response{
- Value: &Response_SetOption{&ResponseSetOption{log}},
- }
- }
-
- func ToResponseAppendTx(code CodeType, data []byte, log string) *Response {
- return &Response{
- Value: &Response_AppendTx{&ResponseAppendTx{code, data, log}},
- }
- }
-
- func ToResponseCheckTx(code CodeType, data []byte, log string) *Response {
- return &Response{
- Value: &Response_CheckTx{&ResponseCheckTx{code, data, log}},
- }
- }
-
- func ToResponseCommit(code CodeType, data []byte, log string) *Response {
- return &Response{
- Value: &Response_Commit{&ResponseCommit{code, data, log}},
- }
- }
-
- func ToResponseQuery(code CodeType, data []byte, log string) *Response {
- return &Response{
- Value: &Response_Query{&ResponseQuery{code, data, log}},
- }
- }
-
- func ToResponseInitChain() *Response {
- return &Response{
- Value: &Response_InitChain{&ResponseInitChain{}},
- }
- }
-
- func ToResponseBeginBlock() *Response {
- return &Response{
- Value: &Response_BeginBlock{&ResponseBeginBlock{}},
- }
- }
-
- func ToResponseEndBlock(validators []*Validator) *Response {
- return &Response{
- Value: &Response_EndBlock{&ResponseEndBlock{validators}},
- }
- }
-
- //----------------------------------------
-
- // Write proto message, length delimited
- func WriteMessage(msg proto.Message, w io.Writer) error {
- bz, err := proto.Marshal(msg)
- if err != nil {
- return err
- }
- var n int
- wire.WriteByteSlice(bz, w, &n, &err)
- return err
- }
-
- // Read proto message, length delimited
- func ReadMessage(r io.Reader, msg proto.Message) error {
- var n int
- var err error
- bz := wire.ReadByteSlice(r, 0, &n, &err)
- if err != nil {
- return err
- }
- err = proto.Unmarshal(bz, msg)
- return err
- }
|