1
0
Fork 0

Fix purgeRoom call

This commit is contained in:
Malte Brandy 2021-05-23 03:19:54 +02:00
parent 6f5689778d
commit fd78916e35

View file

@ -28,12 +28,15 @@ import Database.PostgreSQL.Simple as PSQL (
import Network.HTTP ( import Network.HTTP (
Header (Header), Header (Header),
HeaderName (HdrAuthorization), HeaderName (HdrAuthorization),
RequestMethod (DELETE),
Request_String, Request_String,
Response (rspBody), Response (rspBody, rspReason),
getRequest, getRequest,
insertHeaders, insertHeaders,
postRequest, postRequest,
postRequestWithBody, postRequestWithBody,
rqMethod,
rspCode,
simpleHTTP, simpleHTTP,
) )
import Relude import Relude
@ -112,11 +115,13 @@ purgeUpToEvent token roomId upToTime (eventName, eventTime) =
) )
purgeRoom :: Text -> Text -> IO () purgeRoom :: Text -> Text -> IO ()
purgeRoom token roomID = handleResponse =<< (simpleHTTP . giveToken token) (postRequestWithBody url contentType body) purgeRoom token roomID = do
say [i|Deleting #{roomID}...|]
handleResponse =<< (simpleHTTP . giveToken token . \x -> x{rqMethod = DELETE}) (postRequestWithBody url contentType "{}")
where where
body = [i|{"room_id":"${roomID}"}|] url = [i|#{apiUrl}/rooms/#{roomID}|]
url = [i|#{apiUrl}/purge_room|] handleResponse = either printErr (\x -> say [i|#{rspCode x}: #{rspReason x}\n#{rspBody x}|])
handleResponse = either (\e -> sayErr [i|Could not purge room #{roomID}. Error #{e}|]) (const pass) printErr e = sayErr [i|Could not purge room #{roomID}. Error #{e}|]
processRoom :: Text -> PSQL.Connection -> UTCTime -> Text -> IO () processRoom :: Text -> PSQL.Connection -> UTCTime -> Text -> IO ()
processRoom token conn upToTime roomId = do processRoom token conn upToTime roomId = do