aboutsummaryrefslogtreecommitdiffstats
path: root/backend/lib/ACMS
diff options
context:
space:
mode:
authorLibravatar Alexander Foremny <aforemny@posteo.de>2024-10-11 17:12:38 +0200
committerLibravatar Alexander Foremny <aforemny@posteo.de>2024-10-11 17:12:38 +0200
commit35eb8836f39b21e5e4f7770936d5a5073ea2b783 (patch)
tree9cbd97e91128708d35d7c861e67a839f59be9bdc /backend/lib/ACMS
parent8d68caeb8d33ed8390911bfccdb0648e6ff80c7b (diff)
add cli command `collection schema COLLECTION`
Diffstat (limited to 'backend/lib/ACMS')
-rw-r--r--backend/lib/ACMS/API/REST/Collection.hs9
1 files changed, 9 insertions, 0 deletions
diff --git a/backend/lib/ACMS/API/REST/Collection.hs b/backend/lib/ACMS/API/REST/Collection.hs
index ed0ae9a..375b20c 100644
--- a/backend/lib/ACMS/API/REST/Collection.hs
+++ b/backend/lib/ACMS/API/REST/Collection.hs
@@ -1,10 +1,12 @@
{-# LANGUAGE OverloadedStrings #-}
+
module ACMS.API.REST.Collection where
import Data.Aeson qualified as A
import Data.Aeson.KeyMap qualified as AM
import Data.ByteString.Lazy.UTF8 qualified as LB
import Data.Function ((&))
+import Data.String (fromString)
import Data.Text qualified as T
import Network.HTTP.Simple
import Text.Printf (printf)
@@ -58,3 +60,10 @@ delete c i =
(LB.fromString (printf "DELETE FROM %s WHERE %s.$fileName == \"%s\"" c c i))
& httpLBS
>>= A.throwDecode . getResponseBody
+
+schema :: T.Text -> IO A.Value
+schema c =
+ fromString (printf "http://localhost:8081/%s.schema.json" c)
+ & setRequestMethod "POST"
+ & httpLBS
+ >>= A.throwDecode . getResponseBody