go.uber.org/yarpc@v1.72.1/internal/grpcerrorcodes/codes.go (about) 1 // Copyright (c) 2022 Uber Technologies, Inc. 2 // 3 // Permission is hereby granted, free of charge, to any person obtaining a copy 4 // of this software and associated documentation files (the "Software"), to deal 5 // in the Software without restriction, including without limitation the rights 6 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 // copies of the Software, and to permit persons to whom the Software is 8 // furnished to do so, subject to the following conditions: 9 // 10 // The above copyright notice and this permission notice shall be included in 11 // all copies or substantial portions of the Software. 12 // 13 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 // THE SOFTWARE. 20 21 package grpcerrorcodes 22 23 import ( 24 "go.uber.org/yarpc/yarpcerrors" 25 "google.golang.org/grpc/codes" 26 ) 27 28 var ( 29 // YARPCCodeToGRPCCode maps all Codes to their corresponding gRPC Code. 30 YARPCCodeToGRPCCode = map[yarpcerrors.Code]codes.Code{ 31 yarpcerrors.CodeOK: codes.OK, 32 yarpcerrors.CodeCancelled: codes.Canceled, 33 yarpcerrors.CodeUnknown: codes.Unknown, 34 yarpcerrors.CodeInvalidArgument: codes.InvalidArgument, 35 yarpcerrors.CodeDeadlineExceeded: codes.DeadlineExceeded, 36 yarpcerrors.CodeNotFound: codes.NotFound, 37 yarpcerrors.CodeAlreadyExists: codes.AlreadyExists, 38 yarpcerrors.CodePermissionDenied: codes.PermissionDenied, 39 yarpcerrors.CodeResourceExhausted: codes.ResourceExhausted, 40 yarpcerrors.CodeFailedPrecondition: codes.FailedPrecondition, 41 yarpcerrors.CodeAborted: codes.Aborted, 42 yarpcerrors.CodeOutOfRange: codes.OutOfRange, 43 yarpcerrors.CodeUnimplemented: codes.Unimplemented, 44 yarpcerrors.CodeInternal: codes.Internal, 45 yarpcerrors.CodeUnavailable: codes.Unavailable, 46 yarpcerrors.CodeDataLoss: codes.DataLoss, 47 yarpcerrors.CodeUnauthenticated: codes.Unauthenticated, 48 } 49 50 // GRPCCodeToYARPCCode maps all gRPC Codes to their corresponding Code. 51 GRPCCodeToYARPCCode = map[codes.Code]yarpcerrors.Code{ 52 codes.OK: yarpcerrors.CodeOK, 53 codes.Canceled: yarpcerrors.CodeCancelled, 54 codes.Unknown: yarpcerrors.CodeUnknown, 55 codes.InvalidArgument: yarpcerrors.CodeInvalidArgument, 56 codes.DeadlineExceeded: yarpcerrors.CodeDeadlineExceeded, 57 codes.NotFound: yarpcerrors.CodeNotFound, 58 codes.AlreadyExists: yarpcerrors.CodeAlreadyExists, 59 codes.PermissionDenied: yarpcerrors.CodePermissionDenied, 60 codes.ResourceExhausted: yarpcerrors.CodeResourceExhausted, 61 codes.FailedPrecondition: yarpcerrors.CodeFailedPrecondition, 62 codes.Aborted: yarpcerrors.CodeAborted, 63 codes.OutOfRange: yarpcerrors.CodeOutOfRange, 64 codes.Unimplemented: yarpcerrors.CodeUnimplemented, 65 codes.Internal: yarpcerrors.CodeInternal, 66 codes.Unavailable: yarpcerrors.CodeUnavailable, 67 codes.DataLoss: yarpcerrors.CodeDataLoss, 68 codes.Unauthenticated: yarpcerrors.CodeUnauthenticated, 69 } 70 )