mirror of
https://github.com/yusing/godoxy.git
synced 2026-03-23 17:41:05 +01:00
refactor(errors): simplify gperr.Builder usage
This commit is contained in:
2
goutils
2
goutils
Submodule goutils updated: 21e3d06e6b...66b3d4cbeb
@@ -57,7 +57,7 @@ func validateFile(fileType FileType, content []byte) gperr.Error {
|
||||
return config.Validate(content)
|
||||
case FileTypeMiddleware:
|
||||
errs := gperr.NewBuilder("middleware errors")
|
||||
middleware.BuildMiddlewaresFromYAML("", content, errs)
|
||||
middleware.BuildMiddlewaresFromYAML("", content, &errs)
|
||||
return errs.Error()
|
||||
}
|
||||
return provider.Validate(content)
|
||||
|
||||
@@ -62,7 +62,7 @@ func TestCIDRWhitelistValidation(t *testing.T) {
|
||||
|
||||
func TestCIDRWhitelist(t *testing.T) {
|
||||
errs := gperr.NewBuilder("")
|
||||
mids := BuildMiddlewaresFromYAML("", testCIDRWhitelistCompose, errs)
|
||||
mids := BuildMiddlewaresFromYAML("", testCIDRWhitelistCompose, &errs)
|
||||
expect.NoError(t, errs.Error())
|
||||
deny = mids["deny@file"]
|
||||
accept = mids["accept@file"]
|
||||
|
||||
@@ -14,7 +14,7 @@ var testMiddlewareCompose []byte
|
||||
|
||||
func TestBuild(t *testing.T) {
|
||||
errs := gperr.NewBuilder("")
|
||||
middlewares := BuildMiddlewaresFromYAML("", testMiddlewareCompose, errs)
|
||||
middlewares := BuildMiddlewaresFromYAML("", testMiddlewareCompose, &errs)
|
||||
expect.NoError(t, errs.Error())
|
||||
expect.Must(json.MarshalIndent(middlewares, "", " "))
|
||||
// t.Log(string(data))
|
||||
|
||||
@@ -73,7 +73,7 @@ func LoadComposeFiles() {
|
||||
}
|
||||
for _, defFile := range middlewareDefs {
|
||||
voidErrs := gperr.NewBuilder("") // ignore these errors, will be added in next step
|
||||
mws := BuildMiddlewaresFromComposeFile(defFile, voidErrs)
|
||||
mws := BuildMiddlewaresFromComposeFile(defFile, &voidErrs)
|
||||
if len(mws) == 0 {
|
||||
continue
|
||||
}
|
||||
@@ -92,7 +92,7 @@ func LoadComposeFiles() {
|
||||
}
|
||||
// build again to resolve cross references
|
||||
for _, defFile := range middlewareDefs {
|
||||
mws := BuildMiddlewaresFromComposeFile(defFile, errs)
|
||||
mws := BuildMiddlewaresFromComposeFile(defFile, &errs)
|
||||
if len(mws) == 0 {
|
||||
continue
|
||||
}
|
||||
|
||||
@@ -12,7 +12,7 @@ import (
|
||||
type EventHandler struct {
|
||||
provider *Provider
|
||||
|
||||
errs *gperr.Builder
|
||||
errs gperr.Builder
|
||||
}
|
||||
|
||||
func (p *Provider) newEventHandler() *EventHandler {
|
||||
|
||||
@@ -219,19 +219,19 @@ func (r *Route) Validate() gperr.Error {
|
||||
|
||||
switch r.Scheme {
|
||||
case route.SchemeFileServer:
|
||||
r.ProxyURL = gperr.Collect(errs, nettypes.ParseURL, "file://"+r.Root)
|
||||
r.ProxyURL = gperr.Collect(&errs, nettypes.ParseURL, "file://"+r.Root)
|
||||
r.Host = ""
|
||||
r.Port.Proxy = 0
|
||||
case route.SchemeHTTP, route.SchemeHTTPS:
|
||||
if r.Port.Listening != 0 {
|
||||
errs.Addf("unexpected listening port for %s scheme", r.Scheme)
|
||||
}
|
||||
r.ProxyURL = gperr.Collect(errs, nettypes.ParseURL, fmt.Sprintf("%s://%s:%d", r.Scheme, r.Host, r.Port.Proxy))
|
||||
r.ProxyURL = gperr.Collect(&errs, nettypes.ParseURL, fmt.Sprintf("%s://%s:%d", r.Scheme, r.Host, r.Port.Proxy))
|
||||
case route.SchemeTCP, route.SchemeUDP:
|
||||
if !r.ShouldExclude() {
|
||||
r.LisURL = gperr.Collect(errs, nettypes.ParseURL, fmt.Sprintf("%s://:%d", r.Scheme, r.Port.Listening))
|
||||
r.LisURL = gperr.Collect(&errs, nettypes.ParseURL, fmt.Sprintf("%s://:%d", r.Scheme, r.Port.Listening))
|
||||
}
|
||||
r.ProxyURL = gperr.Collect(errs, nettypes.ParseURL, fmt.Sprintf("%s://%s:%d", r.Scheme, r.Host, r.Port.Proxy))
|
||||
r.ProxyURL = gperr.Collect(&errs, nettypes.ParseURL, fmt.Sprintf("%s://%s:%d", r.Scheme, r.Host, r.Port.Proxy))
|
||||
}
|
||||
|
||||
if !r.UseHealthCheck() && (r.UseLoadBalance() || r.UseIdleWatcher()) {
|
||||
|
||||
@@ -54,21 +54,15 @@ type (
|
||||
} // @name ContainerImage
|
||||
|
||||
ContainerError struct {
|
||||
errs *gperr.Builder
|
||||
errs gperr.Builder
|
||||
}
|
||||
)
|
||||
|
||||
func (e *ContainerError) Add(err error) {
|
||||
if e.errs == nil {
|
||||
e.errs = gperr.NewBuilder()
|
||||
}
|
||||
e.errs.Add(err)
|
||||
}
|
||||
|
||||
func (e *ContainerError) Error() string {
|
||||
if e.errs == nil {
|
||||
return "<niL>"
|
||||
}
|
||||
return e.errs.String()
|
||||
}
|
||||
|
||||
@@ -77,6 +71,6 @@ func (e *ContainerError) Unwrap() error {
|
||||
}
|
||||
|
||||
func (e *ContainerError) MarshalJSON() ([]byte, error) {
|
||||
err := e.errs.Error().(interface{ Plain() []byte })
|
||||
err := e.errs.Error().(gperr.PlainError)
|
||||
return sonic.Marshal(string(err.Plain()))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user