From 59d82b0abe8549ade46a28939e9f0780c9f1fad8 Mon Sep 17 00:00:00 2001 From: Asim Aslam Date: Thu, 10 Jan 2019 11:43:36 +0000 Subject: [PATCH] Add response --- client/rpc_response.go | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 client/rpc_response.go diff --git a/client/rpc_response.go b/client/rpc_response.go new file mode 100644 index 00000000..d5c4e894 --- /dev/null +++ b/client/rpc_response.go @@ -0,0 +1,35 @@ +package client + +import ( + "github.com/micro/go-micro/codec" + "github.com/micro/go-micro/transport" +) + +type rpcResponse struct { + header map[string]string + body []byte + socket transport.Socket + codec codec.Codec +} + +func (r *rpcResponse) Codec() codec.Writer { + return r.codec +} + +func (r *rpcResponse) Header() map[string]string { + return r.header +} + +func (r *rpcResponse) Read() ([]byte, error) { + var msg transport.Message + + if err := r.socket.Recv(&msg); err != nil { + return nil, err + } + + // set internals + r.header = msg.Header + r.body = msg.Body + + return msg.Body, nil +}