diff options
Diffstat (limited to 'HTTP/Client.hs')
-rw-r--r-- | HTTP/Client.hs | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/HTTP/Client.hs b/HTTP/Client.hs new file mode 100644 index 0000000..e4e9b67 --- /dev/null +++ b/HTTP/Client.hs @@ -0,0 +1,27 @@ +{- Copyright 2016 Joey Hess <id@joeyh.name> + - + - Licensed under the GNU AGPL version 3 or higher. + -} + +module HTTP.Client where + +import HTTP +import Types +import Types.Storage +import Servant.API +import Servant.Client +import Data.Proxy +import Network.HTTP.Client (Manager) + +apiVersion :: Manager -> BaseUrl -> ClientM APIVersion +motd :: Manager -> BaseUrl -> ClientM Motd +proofOfWorkRequirement :: Manager -> BaseUrl -> ClientM (Maybe ProofOfWorkRequirement) +getObject :: StorableObjectIdent -> Maybe ProofOfWork -> Manager -> BaseUrl -> ClientM StorableObject +putObject :: StorableObjectIdent -> Maybe ProofOfWork -> Types.StorableObject -> Manager -> BaseUrl -> ClientM StoreResult +countObjects :: Maybe ProofOfWork -> Manager -> BaseUrl -> ClientM CountResult +apiVersion + :<|> motd + :<|> proofOfWorkRequirement + :<|> getObject + :<|> putObject + :<|> countObjects = client (Proxy :: Proxy HttpAPI) |