Skip to content

Commit f4bd83d

Browse files
committed
Refine the deps
1 parent fe9b176 commit f4bd83d

File tree

3 files changed

+34
-23
lines changed

3 files changed

+34
-23
lines changed

src/PostgREST/Error/PgError.hs

Lines changed: 6 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,12 @@ module PostgREST.Error.PgError
77
Authenticated,
88
) where
99

10-
import qualified Data.Aeson as JSON
11-
import qualified Hasql.Pool as SQL
12-
import qualified Hasql.Session as SQL
13-
import qualified Network.HTTP.Types as HTTP
14-
import qualified PostgREST.Error.PgError.ResultError as ResultError
10+
import qualified Data.Aeson as JSON
11+
import qualified Hasql.Pool as SQL
12+
import qualified Network.HTTP.Types as HTTP
13+
import qualified PostgREST.Error.PgError.UsageError as UsageError
1514

1615
import PostgREST.Error.Algebra
17-
import PostgREST.Error.PgError.CommandError ()
18-
import PostgREST.Error.PgError.ResultError ()
19-
import PostgREST.Error.PgError.UsageError ()
2016
import Protolude
2117

2218
data PgError = PgError Authenticated SQL.UsageError
@@ -25,9 +21,9 @@ data PgError = PgError Authenticated SQL.UsageError
2521
type Authenticated = Bool
2622

2723
instance PgrstError PgError where
28-
status (PgError authed usageError) = pgErrorStatus authed usageError
24+
status (PgError authed usageError) = UsageError.pgErrorStatus authed usageError
2925

30-
headers (PgError _ (SQL.SessionUsageError (SQL.QueryError _ _ (SQL.ResultError (ResultError.maybeHeaders -> Just matchingHeaders))))) =
26+
headers (PgError _ (UsageError.maybeHeaders -> Just matchingHeaders)) =
3127
matchingHeaders
3228

3329
headers err =
@@ -44,10 +40,3 @@ instance ErrorBody PgError where
4440
message (PgError _ usageError) = message usageError
4541
details (PgError _ usageError) = details usageError
4642
hint (PgError _ usageError) = hint usageError
47-
48-
pgErrorStatus :: Bool -> SQL.UsageError -> HTTP.Status
49-
pgErrorStatus _ (SQL.ConnectionUsageError _) = HTTP.status503
50-
pgErrorStatus _ SQL.AcquisitionTimeoutUsageError = HTTP.status504
51-
pgErrorStatus _ (SQL.SessionUsageError (SQL.QueryError _ _ (SQL.ClientError _))) = HTTP.status503
52-
pgErrorStatus authed (SQL.SessionUsageError (SQL.QueryError _ _ (SQL.ResultError rError))) =
53-
ResultError.pgErrorStatus authed rError

src/PostgREST/Error/PgError/CommandError.hs

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,9 @@ module PostgREST.Error.PgError.CommandError where
55
import qualified Data.Aeson as JSON
66
import qualified Data.Text.Encoding as T
77
import qualified Hasql.Session as SQL
8+
import qualified Network.HTTP.Types as HTTP
89
import PostgREST.Error.Algebra
9-
import PostgREST.Error.PgError.ResultError ()
10+
import qualified PostgREST.Error.PgError.ResultError as ResultError
1011
import Protolude
1112

1213
instance JSON.ToJSON SQL.CommandError where
@@ -30,3 +31,12 @@ instance ErrorBody SQL.CommandError where
3031

3132
hint (SQL.ResultError resultError) = hint resultError
3233
hint _ = Nothing
34+
35+
pgErrorStatus :: Bool -> SQL.CommandError -> HTTP.Status
36+
pgErrorStatus _ (SQL.ClientError _) = HTTP.status503
37+
pgErrorStatus authed (SQL.ResultError rError) =
38+
ResultError.pgErrorStatus authed rError
39+
40+
maybeHeaders :: SQL.CommandError -> Maybe [HTTP.Header]
41+
maybeHeaders (SQL.ResultError rError) = ResultError.maybeHeaders rError
42+
maybeHeaders _ = Nothing

src/PostgREST/Error/PgError/UsageError.hs

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,14 @@
22

33
module PostgREST.Error.PgError.UsageError where
44

5-
import qualified Data.Aeson as JSON
6-
import qualified Data.Text.Encoding as T
7-
import qualified Hasql.Pool as SQL
8-
import qualified Hasql.Session as SQL
5+
import qualified Data.Aeson as JSON
6+
import qualified Data.Text.Encoding as T
7+
import qualified Hasql.Pool as SQL
8+
import qualified Hasql.Session as SQL
9+
import qualified Network.HTTP.Types as HTTP
10+
import qualified PostgREST.Error.PgError.CommandError as CommandError
911

1012
import PostgREST.Error.Algebra
11-
import PostgREST.Error.PgError.CommandError ()
1213
import Protolude
1314

1415

@@ -32,3 +33,14 @@ instance ErrorBody SQL.UsageError where
3233
hint (SQL.ConnectionUsageError _) = Nothing
3334
hint (SQL.SessionUsageError (SQL.QueryError _ _ e)) = hint e
3435
hint SQL.AcquisitionTimeoutUsageError = Nothing
36+
37+
pgErrorStatus :: Bool -> SQL.UsageError -> HTTP.Status
38+
pgErrorStatus _ (SQL.ConnectionUsageError _) = HTTP.status503
39+
pgErrorStatus _ SQL.AcquisitionTimeoutUsageError = HTTP.status504
40+
pgErrorStatus authed (SQL.SessionUsageError (SQL.QueryError _ _ commandError)) =
41+
CommandError.pgErrorStatus authed commandError
42+
43+
maybeHeaders :: SQL.UsageError -> Maybe [HTTP.Header]
44+
maybeHeaders (SQL.SessionUsageError (SQL.QueryError _ _ commandError)) =
45+
CommandError.maybeHeaders commandError
46+
maybeHeaders _ = Nothing

0 commit comments

Comments
 (0)