lint fixes (#14)

* lint fixes

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
This commit is contained in:
2020-08-21 14:53:21 +03:00
committed by GitHub
parent 199ff66bd4
commit c4a303190a
42 changed files with 95 additions and 178 deletions

View File

@@ -4,15 +4,13 @@ import (
"encoding/json"
"strings"
b "bytes"
"github.com/golang/protobuf/jsonpb"
"github.com/golang/protobuf/proto"
"github.com/unistack-org/micro/v3/codec"
"github.com/unistack-org/micro/v3/codec/bytes"
"google.golang.org/grpc"
"google.golang.org/grpc/encoding"
"google.golang.org/grpc/metadata"
jsonpb "google.golang.org/protobuf/encoding/protojson"
"google.golang.org/protobuf/proto"
)
type jsonCodec struct{}
@@ -20,10 +18,16 @@ type bytesCodec struct{}
type protoCodec struct{}
type wrapCodec struct{ encoding.Codec }
var jsonpbMarshaler = &jsonpb.Marshaler{
EnumsAsInts: false,
EmitDefaults: false,
OrigName: true,
var jsonpbMarshaler = jsonpb.MarshalOptions{
UseEnumNumbers: false,
EmitUnpopulated: false,
UseProtoNames: true,
AllowPartial: false,
}
var jsonpbUnmarshaler = jsonpb.UnmarshalOptions{
DiscardUnknown: false,
AllowPartial: false,
}
var (
@@ -85,8 +89,8 @@ func (protoCodec) Name() string {
func (jsonCodec) Marshal(v interface{}) ([]byte, error) {
if pb, ok := v.(proto.Message); ok {
s, err := jsonpbMarshaler.MarshalToString(pb)
return []byte(s), err
s, err := jsonpbMarshaler.Marshal(pb)
return s, err
}
return json.Marshal(v)
@@ -97,7 +101,7 @@ func (jsonCodec) Unmarshal(data []byte, v interface{}) error {
return nil
}
if pb, ok := v.(proto.Message); ok {
return jsonpb.Unmarshal(b.NewReader(data), pb)
return jsonpbUnmarshaler.Unmarshal(data, pb)
}
return json.Unmarshal(data, v)
}

View File

@@ -1029,14 +1029,11 @@ func (g *grpcServer) Stop() error {
ch := make(chan error)
g.exit <- ch
var err error
select {
case err = <-ch:
g.Lock()
g.rsvc = nil
g.started = false
g.Unlock()
}
err := <-ch
g.Lock()
g.rsvc = nil
g.started = false
g.Unlock()
return err
}

View File

@@ -59,8 +59,6 @@ type response struct {
// router represents an RPC router.
type router struct {
name string
mu sync.Mutex // protects the serviceMap
serviceMap map[string]*service
@@ -371,7 +369,12 @@ func (router *router) readRequest(r server.Request) (service *service, mtype *me
return
}
func (router *router) readHeader(cc codec.Reader) (service *service, mtype *methodType, req *request, keepReading bool, err error) {
func (router *router) readHeader(cc codec.Reader) (*service, *methodType, *request, bool, error) {
var err error
var service *service
var mtype *methodType
var req *request
// Grab the request header.
msg := new(codec.Message)
msg.Type = codec.Request
@@ -382,34 +385,32 @@ func (router *router) readHeader(cc codec.Reader) (service *service, mtype *meth
if err != nil {
req = nil
if err == io.EOF || err == io.ErrUnexpectedEOF {
return
return nil, nil, nil, false, err
}
err = errors.New("rpc: router cannot decode request: " + err.Error())
return
return nil, nil, nil, false, fmt.Errorf("rpc: router cannot decode request: %v", err)
}
// We read the header successfully. If we see an error now,
// we can still recover and move on to the next request.
keepReading = true
keepReading := true
serviceMethod := strings.Split(req.msg.Endpoint, ".")
if len(serviceMethod) != 2 {
err = errors.New("rpc: service/endpoint request ill-formed: " + req.msg.Endpoint)
return
return nil, nil, nil, keepReading, fmt.Errorf("rpc: service/endpoint request ill-formed: %v", req.msg.Endpoint)
}
// Look up the request.
router.mu.Lock()
service = router.serviceMap[serviceMethod[0]]
router.mu.Unlock()
if service == nil {
err = errors.New("rpc: can't find service " + serviceMethod[0])
return
return nil, nil, nil, keepReading, fmt.Errorf("rpc: can't find service %v", serviceMethod[0])
}
mtype = service.method[serviceMethod[1]]
if mtype == nil {
err = errors.New("rpc: can't find method " + serviceMethod[1])
return nil, nil, nil, keepReading, fmt.Errorf("rpc: can't find method %v", serviceMethod[1])
}
return
return service, mtype, req, keepReading, nil
}
func (router *router) NewHandler(h interface{}, opts ...server.HandlerOption) server.Handler {