From 6eee73df5deca833d002bb0dee08020039e63009 Mon Sep 17 00:00:00 2001 From: Vincent Batts Date: Tue, 19 Apr 2022 14:38:43 -0400 Subject: [PATCH] *.go: organize errors to one spot And add a little documentation. Signed-off-by: Vincent Batts --- channel.go | 3 --- client.go | 4 ---- errors.go | 34 ++++++++++++++++++++++++++++++++++ server.go | 5 ----- stream.go | 3 --- 5 files changed, 34 insertions(+), 15 deletions(-) create mode 100644 errors.go diff --git a/channel.go b/channel.go index 1e06274..feafd9a 100644 --- a/channel.go +++ b/channel.go @@ -19,7 +19,6 @@ package ttrpc import ( "bufio" "encoding/binary" - "errors" "fmt" "io" "net" @@ -61,8 +60,6 @@ const ( flagNoData uint8 = 0x4 ) -var ErrProtocol = errors.New("protocol error") - // messageHeader represents the fixed-length message header of 10 bytes sent // with every request. type messageHeader struct { diff --git a/client.go b/client.go index 384eb02..0abc702 100644 --- a/client.go +++ b/client.go @@ -33,10 +33,6 @@ import ( "google.golang.org/protobuf/proto" ) -// ErrClosed is returned by client methods when the underlying connection is -// closed. -var ErrClosed = errors.New("ttrpc: closed") - // Client for a ttrpc server type Client struct { codec codec diff --git a/errors.go b/errors.go new file mode 100644 index 0000000..ec14b79 --- /dev/null +++ b/errors.go @@ -0,0 +1,34 @@ +/* + Copyright The containerd Authors. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +package ttrpc + +import "errors" + +var ( + // ErrProtocol is a general error in the handling the protocol. + ErrProtocol = errors.New("protocol error") + + // ErrClosed is returned by client methods when the underlying connection is + // closed. + ErrClosed = errors.New("ttrpc: closed") + + // ErrServerClosed is returned when the Server has closed its connection. + ErrServerClosed = errors.New("ttrpc: server closed") + + // ErrStreamClosed is when the streaming connection is closed. + ErrStreamClosed = errors.New("ttrpc: stream closed") +) diff --git a/server.go b/server.go index 17c6bcf..0e65122 100644 --- a/server.go +++ b/server.go @@ -18,7 +18,6 @@ package ttrpc import ( "context" - "errors" "io" "math/rand" "net" @@ -31,10 +30,6 @@ import ( "google.golang.org/grpc/status" ) -var ( - ErrServerClosed = errors.New("ttrpc: server closed") -) - type Server struct { config *serverConfig services *serviceSet diff --git a/stream.go b/stream.go index 5609e14..5f264fe 100644 --- a/stream.go +++ b/stream.go @@ -18,12 +18,9 @@ package ttrpc import ( "context" - "errors" "sync" ) -var ErrStreamClosed = errors.New("ttrpc: stream closed") - type streamID uint32 type streamMessage struct {