diff --git a/cmd/grpcurl/grpcurl.go b/cmd/grpcurl/grpcurl.go index 57b714d..88cbab4 100644 --- a/cmd/grpcurl/grpcurl.go +++ b/cmd/grpcurl/grpcurl.go @@ -434,10 +434,9 @@ func (h *handler) getRequestData() ([]byte, error) { var msg json.RawMessage if err := h.dec.Decode(&msg); err != nil { return nil, err - } else { - h.reqCount++ - return msg, nil } + h.reqCount++ + return msg, nil } func (*handler) OnReceiveHeaders(md metadata.MD) { diff --git a/grpcurl.go b/grpcurl.go index 095ac88..d97662e 100644 --- a/grpcurl.go +++ b/grpcurl.go @@ -225,16 +225,16 @@ func ListMethods(source DescriptorSource, serviceName string) ([]string, error) if err != nil { return nil, err } - if sd, ok := dsc.(*desc.ServiceDescriptor); !ok { + sd, ok := dsc.(*desc.ServiceDescriptor) + if !ok { return nil, notFound("Service", serviceName) - } else { - methods := make([]string, 0, len(sd.GetMethods())) - for _, method := range sd.GetMethods() { - methods = append(methods, method.GetName()) - } - sort.Strings(methods) - return methods, nil } + methods := make([]string, 0, len(sd.GetMethods())) + for _, method := range sd.GetMethods() { + methods = append(methods, method.GetName()) + } + sort.Strings(methods) + return methods, nil } type notFoundError string @@ -304,9 +304,8 @@ func InvokeRpc(ctx context.Context, source DescriptorSource, cc *grpc.ClientConn if err != nil { if isNotFoundError(err) { return fmt.Errorf("target server does not expose service %q", svc) - } else { - return fmt.Errorf("failed to query for service descriptor %q: %v", svc, err) } + return fmt.Errorf("failed to query for service descriptor %q: %v", svc, err) } sd, ok := dsc.(*desc.ServiceDescriptor) if !ok { @@ -345,9 +344,8 @@ func InvokeRpc(ctx context.Context, source DescriptorSource, cc *grpc.ClientConn return invokeClientStream(ctx, stub, mtd, handler, requestData, req) } else if mtd.IsServerStreaming() { return invokeServerStream(ctx, stub, mtd, handler, requestData, req) - } else { - return invokeUnary(ctx, stub, mtd, handler, requestData, req) } + return invokeUnary(ctx, stub, mtd, handler, requestData, req) } func invokeUnary(ctx context.Context, stub grpcdynamic.Stub, md *desc.MethodDescriptor, handler InvocationEventHandler, @@ -765,9 +763,8 @@ func fullyConvertToDynamic(msgFact *dynamic.MessageFactory, msg proto.Message) ( newVal, err := fullyConvertToDynamic(msgFact, v.(proto.Message)) if err != nil { return nil, err - } else { - dm.PutMapField(fd, k, newVal) } + dm.PutMapField(fd, k, newVal) } } } else if fd.IsRepeated() { @@ -777,9 +774,8 @@ func fullyConvertToDynamic(msgFact *dynamic.MessageFactory, msg proto.Message) ( newVal, err := fullyConvertToDynamic(msgFact, e.(proto.Message)) if err != nil { return nil, err - } else { - dm.SetRepeatedField(fd, i, newVal) } + dm.SetRepeatedField(fd, i, newVal) } } } else { @@ -788,9 +784,8 @@ func fullyConvertToDynamic(msgFact *dynamic.MessageFactory, msg proto.Message) ( newVal, err := fullyConvertToDynamic(msgFact, v.(proto.Message)) if err != nil { return nil, err - } else { - dm.SetField(fd, newVal) } + dm.SetField(fd, newVal) } } } @@ -936,9 +931,8 @@ func BlockingDial(ctx context.Context, address string, creds credentials.Transpo case res := <-result: if conn, ok := res.(*grpc.ClientConn); ok { return conn, nil - } else { - return nil, res.(error) } + return nil, res.(error) case <-ctx.Done(): return nil, ctx.Err() } diff --git a/testing/test_server.go b/testing/test_server.go index 37a04d1..e55a7a8 100644 --- a/testing/test_server.go +++ b/testing/test_server.go @@ -17,7 +17,7 @@ import ( type TestServer struct{} -// One empty request followed by one empty response. +// EmptyCall is One empty request followed by one empty response. func (TestServer) EmptyCall(ctx context.Context, req *grpc_testing.Empty) (*grpc_testing.Empty, error) { headers, trailers, failEarly, failLate := processMetadata(ctx) grpc.SetHeader(ctx, headers) @@ -32,7 +32,7 @@ func (TestServer) EmptyCall(ctx context.Context, req *grpc_testing.Empty) (*grpc return req, nil } -// One request followed by one response. +// UnaryCall One request followed by one response. // The server returns the client payload as-is. func (TestServer) UnaryCall(ctx context.Context, req *grpc_testing.SimpleRequest) (*grpc_testing.SimpleResponse, error) { headers, trailers, failEarly, failLate := processMetadata(ctx) @@ -50,7 +50,7 @@ func (TestServer) UnaryCall(ctx context.Context, req *grpc_testing.SimpleRequest }, nil } -// One request followed by a sequence of responses (streamed download). +// StreamingOutputCall is One request followed by a sequence of responses (streamed download). // The server returns the payload with client desired type and sizes. func (TestServer) StreamingOutputCall(req *grpc_testing.StreamingOutputCallRequest, str grpc_testing.TestService_StreamingOutputCallServer) error { headers, trailers, failEarly, failLate := processMetadata(str.Context()) @@ -87,7 +87,7 @@ func (TestServer) StreamingOutputCall(req *grpc_testing.StreamingOutputCallReque return nil } -// A sequence of requests followed by one response (streamed upload). +// StreamingInputCall is A sequence of requests followed by one response (streamed upload). // The server returns the aggregated size of client payload as the result. func (TestServer) StreamingInputCall(str grpc_testing.TestService_StreamingInputCallServer) error { headers, trailers, failEarly, failLate := processMetadata(str.Context()) @@ -121,7 +121,7 @@ func (TestServer) StreamingInputCall(str grpc_testing.TestService_StreamingInput return nil } -// A sequence of requests with each request served by the server immediately. +// FullDuplexCall is A sequence of requests with each request served by the server immediately. // As one request could lead to multiple responses, this interface // demonstrates the idea of full duplexing. func (TestServer) FullDuplexCall(str grpc_testing.TestService_FullDuplexCallServer) error { @@ -163,7 +163,7 @@ func (TestServer) FullDuplexCall(str grpc_testing.TestService_FullDuplexCallServ return nil } -// A sequence of requests followed by a sequence of responses. +// HalfDuplexCall is A sequence of requests followed by a sequence of responses. // The server buffers all the client requests and then serves them in order. A // stream of responses are returned to the client when the server starts with // first request.