diff options
Diffstat (limited to 'echo/echo_default.go')
-rw-r--r-- | echo/echo_default.go | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/echo/echo_default.go b/echo/echo_default.go index ff3c754..33ad015 100644 --- a/echo/echo_default.go +++ b/echo/echo_default.go | |||
@@ -71,9 +71,10 @@ type EchoConfig struct { | |||
71 | 71 | ||
72 | type EchoWrapper struct { | 72 | type EchoWrapper struct { |
73 | *echo.Echo | 73 | *echo.Echo |
74 | runner *service.AppRunner | 74 | runner *service.AppRunner |
75 | autocert autocert.PrimingCertProvider | 75 | autocert autocert.PrimingCertProvider |
76 | templateFS fs.FS | 76 | templateFS fs.FS |
77 | errorHandler ErrorHandler | ||
77 | } | 78 | } |
78 | 79 | ||
79 | // NewEchoWrapper creates a new instance of Echo and wraps it in an | 80 | // NewEchoWrapper creates a new instance of Echo and wraps it in an |
@@ -132,6 +133,10 @@ func (w *EchoWrapper) GetTemplateFS() fs.FS { | |||
132 | return w.templateFS | 133 | return w.templateFS |
133 | } | 134 | } |
134 | 135 | ||
136 | func (w *EchoWrapper) AddErrorHandler(h ContentErrorHandler, mime ...string) { | ||
137 | w.errorHandler.AddHandler(h, mime...) | ||
138 | } | ||
139 | |||
135 | func (w *EchoWrapper) Configure(c EchoConfig) error { | 140 | func (w *EchoWrapper) Configure(c EchoConfig) error { |
136 | w.configureAutocert(&c) | 141 | w.configureAutocert(&c) |
137 | 142 | ||
@@ -207,12 +212,13 @@ func (w *EchoWrapper) configureTemplates(c *EchoConfig) error { | |||
207 | return fmt.Errorf("Error loading template renderer: %w", err) | 212 | return fmt.Errorf("Error loading template renderer: %w", err) |
208 | } | 213 | } |
209 | 214 | ||
210 | w.HTTPErrorHandler = NewDefaultErrorHandler(tr).HandleError | 215 | w.errorHandler = NewDefaultErrorHandler(tr) |
211 | w.Renderer = tr | 216 | w.Renderer = tr |
212 | } else { | 217 | } else { |
213 | w.HTTPErrorHandler = NewNoHTMLErrorHandler().HandleError | 218 | w.errorHandler = NewNoHTMLErrorHandler() |
214 | } | 219 | } |
215 | 220 | ||
221 | w.HTTPErrorHandler = w.errorHandler.HandleError | ||
216 | w.templateFS = templates | 222 | w.templateFS = templates |
217 | return nil | 223 | return nil |
218 | } | 224 | } |