From f6758264b2448771d3d7a6b85937c13b57888e81 Mon Sep 17 00:00:00 2001 From: Simon Ser Date: Wed, 8 Jan 2020 10:38:33 +0100 Subject: Make New return the Server This will be useful to implement hot reload. --- server.go | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'server.go') diff --git a/server.go b/server.go index df48303..266e582 100644 --- a/server.go +++ b/server.go @@ -133,10 +133,10 @@ type Options struct { } // New creates a new server. -func New(e *echo.Echo, options *Options) error { +func New(e *echo.Echo, options *Options) (*Server, error) { s, err := newServer(options.IMAPURL, options.SMTPURL) if err != nil { - return err + return nil, err } s.Plugins = append([]Plugin(nil), plugins...) @@ -146,13 +146,13 @@ func New(e *echo.Echo, options *Options) error { luaPlugins, err := loadAllLuaPlugins(e.Logger) if err != nil { - return fmt.Errorf("failed to load plugins: %v", err) + return nil, fmt.Errorf("failed to load plugins: %v", err) } s.Plugins = append(s.Plugins, luaPlugins...) e.Renderer, err = loadTemplates(e.Logger, options.Theme, s.Plugins) if err != nil { - return fmt.Errorf("failed to load templates: %v", err) + return nil, fmt.Errorf("failed to load templates: %v", err) } e.HTTPErrorHandler = func(err error, c echo.Context) { @@ -209,5 +209,5 @@ func New(e *echo.Echo, options *Options) error { p.SetRoutes(e.Group("")) } - return nil + return s, nil } -- cgit v1.2.3-59-g8ed1b