@@ -6,27 +6,32 @@ import (
66 "github.com/go-playground/errors"
77)
88
9+ const (
10+ permanent = "Permanent"
11+ transient = "Transient"
12+ )
13+
914// NETErrors helps classify io related errors
1015func NETErrors (c errors.Chain , err error ) (cont bool ) {
1116 switch e := err .(type ) {
1217 case * net.AddrError :
13- tp := "Permanent"
18+ tp := permanent
1419 if e .Temporary () {
15- tp = "Transient"
20+ tp = transient
1621 }
17- c .AddTypes (tp , "net" ).AddTags (
22+ _ = c .AddTypes (tp , "net" ).AddTags (
1823 errors .T ("addr" , e .Addr ),
1924 errors .T ("is_timeout" , e .Timeout ()),
2025 errors .T ("is_temporary" , e .Temporary ()),
2126 )
2227 return false
2328
2429 case * net.DNSError :
25- tp := "Permanent"
30+ tp := permanent
2631 if e .Temporary () {
27- tp = "Transient"
32+ tp = transient
2833 }
29- c .AddTypes (tp , "net" ).AddTags (
34+ _ = c .AddTypes (tp , "net" ).AddTags (
3035 errors .T ("name" , e .Name ),
3136 errors .T ("server" , e .Server ),
3237 errors .T ("is_timeout" , e .Timeout ()),
@@ -35,18 +40,18 @@ func NETErrors(c errors.Chain, err error) (cont bool) {
3540 return false
3641
3742 case * net.ParseError :
38- c .AddTypes ("Permanent" , "net" ).AddTags (
43+ _ = c .AddTypes (permanent , "net" ).AddTags (
3944 errors .T ("type" , e .Type ),
4045 errors .T ("text" , e .Text ),
4146 )
4247 return false
4348
4449 case * net.OpError :
45- tp := "Permanent"
50+ tp := permanent
4651 if e .Temporary () {
47- tp = "Transient"
52+ tp = transient
4853 }
49- c .AddTypes (tp , "net" ).AddTags (
54+ _ = c .AddTypes (tp , "net" ).AddTags (
5055 errors .T ("op" , e .Op ),
5156 errors .T ("net" , e .Net ),
5257 errors .T ("addr" , e .Addr ),
@@ -56,19 +61,19 @@ func NETErrors(c errors.Chain, err error) (cont bool) {
5661 )
5762 return false
5863 case net.UnknownNetworkError :
59- tp := "Permanent"
64+ tp := permanent
6065 if e .Temporary () {
61- tp = "Transient"
66+ tp = transient
6267 }
63- c .AddTypes (tp , "net" ).AddTags (
68+ _ = c .AddTypes (tp , "net" ).AddTags (
6469 errors .T ("is_timeout" , e .Timeout ()),
6570 errors .T ("is_temporary" , e .Temporary ()),
6671 )
6772 }
6873
6974 switch err {
7075 case net .ErrWriteToConnected :
71- c .AddTypes ("Transient" , "net" )
76+ _ = c .AddTypes (transient , "net" )
7277 return false
7378 }
7479 return true
0 commit comments