remove Compressor/DecompressorGenerator

This commit is contained in:
iamqizhao
2016-01-29 14:38:20 -08:00
parent 3f30c980d6
commit af8888dc8d
6 changed files with 46 additions and 72 deletions

View File

@ -105,28 +105,24 @@ func NewClientStream(ctx context.Context, desc *StreamDesc, cc *ClientConn, meth
if err != nil {
return nil, toRPCErr(err)
}
var cp Compressor
if cc.dopts.cg != nil {
cp = cc.dopts.cg()
}
// TODO(zhaoq): CallOption is omitted. Add support when it is needed.
callHdr := &transport.CallHdr{
Host: cc.authority,
Method: method,
Flush: desc.ServerStreams&&desc.ClientStreams,
}
if cp != nil {
callHdr.SendCompress = cp.Type()
if cc.dopts.cp != nil {
callHdr.SendCompress = cc.dopts.cp.Type()
}
cs := &clientStream{
desc: desc,
codec: cc.dopts.codec,
cp: cp,
dg: cc.dopts.dg,
cp: cc.dopts.cp,
dc: cc.dopts.dc,
tracing: EnableTracing,
}
if cp != nil {
callHdr.SendCompress = cp.Type()
if cc.dopts.cp != nil {
callHdr.SendCompress = cc.dopts.cp.Type()
cs.cbuf = new(bytes.Buffer)
}
if cs.tracing {
@ -170,7 +166,7 @@ type clientStream struct {
codec Codec
cp Compressor
cbuf *bytes.Buffer
dg DecompressorGenerator
dc Decompressor
tracing bool // set to EnableTracing when the clientStream is created.
@ -229,7 +225,7 @@ func (cs *clientStream) SendMsg(m interface{}) (err error) {
}
func (cs *clientStream) RecvMsg(m interface{}) (err error) {
err = recv(cs.p, cs.codec, cs.s, cs.dg, m)
err = recv(cs.p, cs.codec, cs.s, cs.dc, m)
defer func() {
// err != nil indicates the termination of the stream.
if err != nil {
@ -248,7 +244,7 @@ func (cs *clientStream) RecvMsg(m interface{}) (err error) {
return
}
// Special handling for client streaming rpc.
err = recv(cs.p, cs.codec, cs.s, cs.dg, m)
err = recv(cs.p, cs.codec, cs.s, cs.dc, m)
cs.closeTransportStream(err)
if err == nil {
return toRPCErr(errors.New("grpc: client streaming protocol violation: get <nil>, want <EOF>"))
@ -334,7 +330,7 @@ type serverStream struct {
p *parser
codec Codec
cp Compressor
dg DecompressorGenerator
dc Decompressor
cbuf *bytes.Buffer
statusCode codes.Code
statusDesc string
@ -402,5 +398,5 @@ func (ss *serverStream) RecvMsg(m interface{}) (err error) {
ss.mu.Unlock()
}
}()
return recv(ss.p, ss.codec, ss.s, ss.dg, m)
return recv(ss.p, ss.codec, ss.s, ss.dc, m)
}