aboutsummaryrefslogtreecommitdiffstats
path: root/backend/lib/ACMS/API/REST/Collection.hs
diff options
context:
space:
mode:
Diffstat (limited to 'backend/lib/ACMS/API/REST/Collection.hs')
-rw-r--r--backend/lib/ACMS/API/REST/Collection.hs51
1 files changed, 0 insertions, 51 deletions
diff --git a/backend/lib/ACMS/API/REST/Collection.hs b/backend/lib/ACMS/API/REST/Collection.hs
deleted file mode 100644
index 7de1909..0000000
--- a/backend/lib/ACMS/API/REST/Collection.hs
+++ /dev/null
@@ -1,51 +0,0 @@
-{-# LANGUAGE OverloadedStrings #-}
-
-module ACMS.API.REST.Collection where
-
-import ACMS.API.Fetch
-import ACMS.API.REST (restRequest)
-import Collection
-import Data.Aeson qualified as A
-import Data.Function ((&))
-import Text.Printf (printf)
-
-list :: (APIMonad m) => Collection -> m [A.Object]
-list c =
- restRequest (printf "/collection/%s" c.name)
- & fetch
- >>= A.throwDecode
-
-read :: (APIMonad m) => CollectionItem -> m (Maybe A.Object)
-read ci =
- restRequest (printf "/collection/%s/%s" ci.collection.name ci.itemFileName)
- & fetch
- >>= A.throwDecode
-
-update :: (APIMonad m) => CollectionItem -> A.Object -> m A.Object
-update ci o =
- restRequest (printf "/collection/%s/%s" ci.collection.name ci.itemFileName)
- & setRequestMethod "PUT"
- & setRequestBodyLBS (A.encode o)
- & fetch
- >>= A.throwDecode
-
-create :: (APIMonad m) => Collection -> A.Object -> m A.Object
-create c o = do
- restRequest (printf "/collection/%s" c.name)
- & setRequestMethod "POST"
- & setRequestBodyLBS (A.encode o)
- & fetch
- >>= A.throwDecode
-
-delete :: (APIMonad m) => CollectionItem -> m A.Object
-delete ci =
- restRequest (printf "/collection/%s/%s" ci.collection.name ci.itemFileName)
- & setRequestMethod "DELETE"
- & fetch
- >>= A.throwDecode
-
-schema :: (APIMonad m) => (A.FromJSON a) => Collection -> m a
-schema c =
- restRequest (printf "/collection/%s/schema" c.name)
- & fetch
- >>= A.throwDecode