Copyright | (c) 2021 Rory Tyler Hayford |
---|---|
License | BSD-3-Clause |
Maintainer | rory.hayford@protonmail.com |
Stability | experimental |
Portability | GHC |
Safe Haskell | None |
Language | Haskell2010 |
Low-level implementations of Spaces REST transactions. You should not import this module directly, but should instead use the higher-level interface exposed by Network.DO.Spaces.Actions and its submodules
Synopsis
- newSpacesRequest :: MonadThrow m => SpacesRequestBuilder -> UTCTime -> m SpacesRequest
- mkSignature :: SpacesRequest -> StringToSign -> Signature
- mkStringToSign :: SpacesRequest -> StringToSign
- mkAuthorization :: SpacesRequest -> StringToSign -> Authorization
- finalize :: SpacesRequest -> Authorization -> Request
Documentation
newSpacesRequest :: MonadThrow m => SpacesRequestBuilder -> UTCTime -> m SpacesRequest Source #
Create a new SpacesRequest
from a SpacesRequestBuilder
, performing the
necessary computations and setting the appropriate default headers
mkSignature :: SpacesRequest -> StringToSign -> Signature Source #
Generate a Signature
mkStringToSign :: SpacesRequest -> StringToSign Source #
Generate a StringToSign
mkAuthorization :: SpacesRequest -> StringToSign -> Authorization Source #
Create an Authorization
corresponding to the required AWS v4
Authorization
header
finalize :: SpacesRequest -> Authorization -> Request Source #
Extract the Request
from a SpacesRequest
and set the requisite
Authorization
header