aboutsummaryrefslogtreecommitdiff
path: root/server.go
diff options
context:
space:
mode:
authorSimon Ser <contact@emersion.fr>2019-12-03 14:48:11 +0100
committerSimon Ser <contact@emersion.fr>2019-12-03 14:48:11 +0100
commit96646c8324783c9e07135f4e556c746645205f40 (patch)
tree81cae7fce1fb6d415393d78f82bc4c116f2f5cf1 /server.go
parent9f6b086f62c9da8901d3f021aa65cc13661e1e45 (diff)
downloadalps-96646c8324783c9e07135f4e556c746645205f40.tar.gz
alps-96646c8324783c9e07135f4e556c746645205f40.zip
Add context to errors
Diffstat (limited to 'server.go')
-rw-r--r--server.go10
1 files changed, 5 insertions, 5 deletions
diff --git a/server.go b/server.go
index 4156724..1519ee6 100644
--- a/server.go
+++ b/server.go
@@ -28,7 +28,7 @@ type Server struct {
func NewServer(imapURL string) (*Server, error) {
u, err := url.Parse(imapURL)
if err != nil {
- return nil, err
+ return nil, fmt.Errorf("failed to parse IMAP server URL: %v", err)
}
s := &Server{}
@@ -87,7 +87,7 @@ func handleLogin(ectx echo.Context) error {
token, err := ctx.server.imap.pool.Put(conn)
if err != nil {
- return err
+ return fmt.Errorf("failed to put connection in pool: %v", err)
}
ctx.setToken(token)
@@ -116,7 +116,7 @@ func handleGetPart(ctx *context, raw bool) error {
mimeType, _, err := part.Header.ContentType()
if err != nil {
- return err
+ return fmt.Errorf("failed to parse part Content-Type: %v", err)
}
if len(partPath) == 0 {
mimeType = "message/rfc822"
@@ -141,7 +141,7 @@ func handleGetPart(ctx *context, raw bool) error {
if strings.HasPrefix(strings.ToLower(mimeType), "text/") {
b, err := ioutil.ReadAll(part.Body)
if err != nil {
- return err
+ return fmt.Errorf("failed to read part body: %v", err)
}
body = string(b)
}
@@ -246,7 +246,7 @@ func New(imapURL string) *echo.Echo {
e.GET("/logout", func(ectx echo.Context) error {
ctx := ectx.(*context)
if err := ctx.conn.Logout(); err != nil {
- return err
+ return fmt.Errorf("failed to logout: %v", err)
}
ctx.setToken("")
return ctx.Redirect(http.StatusFound, "/login")