From ccf11b5467b2f41690390a20bc50a02c006be3f0 Mon Sep 17 00:00:00 2001 From: Teddy Wing Date: Thu, 10 Aug 2017 23:54:57 +0200 Subject: gitHubCommitAction: Get error handling to work using `Either` Get rid of the `fail` and use an `Either` for error handling instead. This allows us to send back the response string like before, but provide an additional error message when no data comes back from the database query. Remove the old error handling code I had tried to set up previously. --- src/Lib.hs | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) (limited to 'src/Lib.hs') diff --git a/src/Lib.hs b/src/Lib.hs index 3b49136..f8745b2 100644 --- a/src/Lib.hs +++ b/src/Lib.hs @@ -2,11 +2,6 @@ module Lib ( someFunc ) where -import Control.Exception (catch) --- import System.Environment --- import System.IO --- import System.IO.Error - import Database.SQLite.Simple import Message @@ -22,8 +17,7 @@ someFunc = do Just plugin = matchPlugin message dbConn <- open "db/sorbot_development.sqlite3" response <- performPlugin plugin message dbConn - putStrLn response `catch` handleError + case response of + Left e -> putStrLn e + Right r -> putStrLn r close dbConn - -handleError :: IOError -> IO () -handleError err = putStrLn $ show err -- cgit v1.2.3