@@ -4,7 +4,6 @@ Description : PostgREST functions to translate HTTP request to a domain type cal
4
4
-}
5
5
{-# LANGUAGE LambdaCase #-}
6
6
{-# LANGUAGE NamedFieldPuns #-}
7
- -- TODO: This module shouldn't depend on SchemaCache
8
7
module PostgREST.ApiRequest
9
8
( ApiRequest (.. )
10
9
, InvokeMethod (.. )
@@ -46,14 +45,14 @@ import Web.Cookie (parseCookies)
46
45
import PostgREST.ApiRequest.QueryParams (QueryParams (.. ))
47
46
import PostgREST.Config (AppConfig (.. ),
48
47
OpenAPIMode (.. ))
48
+ import PostgREST.Config.Database (TimezoneNames )
49
49
import PostgREST.Error (ApiRequestError (.. ),
50
50
RangeError (.. ))
51
51
import PostgREST.MediaType (MediaType (.. ))
52
52
import PostgREST.RangeQuery (NonnegRange , allRange ,
53
53
convertToLimitZeroRange ,
54
54
hasLimitZero ,
55
55
rangeRequested )
56
- import PostgREST.SchemaCache (SchemaCache (.. ))
57
56
import PostgREST.SchemaCache.Identifiers (FieldName ,
58
57
QualifiedIdentifier (.. ),
59
58
Schema )
@@ -128,8 +127,10 @@ data ApiRequest = ApiRequest {
128
127
}
129
128
130
129
-- | Examines HTTP request and translates it into user intent.
131
- userApiRequest :: AppConfig -> Request -> RequestBody -> SchemaCache -> Either ApiRequestError ApiRequest
132
- userApiRequest conf req reqBody sCache = do
130
+ --
131
+ -- TimezoneNames are used by Prefer: timezone
132
+ userApiRequest :: AppConfig -> Request -> RequestBody -> TimezoneNames -> Either ApiRequestError ApiRequest
133
+ userApiRequest conf req reqBody timezones = do
133
134
resource <- getResource conf $ pathInfo req
134
135
(schema, negotiatedByProfile) <- getSchema conf hdrs method
135
136
act <- getAction resource schema method
@@ -141,7 +142,7 @@ userApiRequest conf req reqBody sCache = do
141
142
, iRange = ranges
142
143
, iTopLevelRange = topLevelRange
143
144
, iPayload = payload
144
- , iPreferences = Preferences. fromHeaders (configDbTxAllowOverride conf) (dbTimezones sCache) hdrs
145
+ , iPreferences = Preferences. fromHeaders (configDbTxAllowOverride conf) timezones hdrs
145
146
, iQueryParams = qPrms
146
147
, iColumns = columns
147
148
, iHeaders = iHdrs
0 commit comments