Copyright | (c) Jon Schoning, 2015 |
---|---|
Maintainer | jonschoning@gmail.com |
Stability | experimental |
Portability | POSIX |
Safe Haskell | None |
Language | Haskell2010 |
- fromApiToken :: String -> PinboardConfig
- data PinboardConfig = PinboardConfig {
- apiToken :: !ByteString
- runPinboard :: (MonadIO m, MonadCatch m, MonadErrorPinboard e) => PinboardConfig -> PinboardT m a -> m (e a)
- pinboardJson :: (MonadPinboard m, FromJSON a) => PinboardRequest -> m a
- runPinboardSingleRaw :: MonadIO m => PinboardConfig -> PinboardRequest -> m (Response ByteString)
- runPinboardSingleRawBS :: (MonadIO m, MonadErrorPinboard e) => PinboardConfig -> PinboardRequest -> m (e ByteString)
- runPinboardSingleJson :: (MonadIO m, MonadCatch m, MonadErrorPinboard e, FromJSON a) => PinboardConfig -> PinboardRequest -> m (e a)
- sendPinboardRequest :: MonadIO m => PinboardEnv -> PinboardRequest -> m (Response ByteString)
- newMgr :: MonadIO m => m Manager
- mgrFail :: (Monad m, MonadErrorPinboard e) => PinboardErrorType -> SomeException -> m (e b)
- parseJSONResponse :: (MonadErrorPinboard e, FromJSON a) => Response ByteString -> e a
- decodeJSONResponse :: (MonadErrorPinboard e, FromJSON a) => ByteString -> e a
- checkStatusCodeResponse :: MonadErrorPinboard e => Response a -> e ()
- checkStatusCode :: MonadErrorPinboard e => Int -> e ()
- addErrMsg :: Text -> PinboardError -> PinboardError
- createParserErr :: Text -> PinboardError
- httpStatusPinboardError :: MonadErrorPinboard e => PinboardErrorHTTPCode -> e a
Config
fromApiToken :: String -> PinboardConfig Source #
Create a default PinboardConfig using the supplied apiToken
The PinboardConfig provides authentication via apiToken
Monadic
runPinboard :: (MonadIO m, MonadCatch m, MonadErrorPinboard e) => PinboardConfig -> PinboardT m a -> m (e a) Source #
Execute computations in the Pinboard monad
pinboardJson :: (MonadPinboard m, FromJSON a) => PinboardRequest -> m a Source #
Create a Pinboard value from a PinboardRequest w/ json deserialization
Single
runPinboardSingleRaw :: MonadIO m => PinboardConfig -> PinboardRequest -> m (Response ByteString) Source #
runPinboardSingleRawBS :: (MonadIO m, MonadErrorPinboard e) => PinboardConfig -> PinboardRequest -> m (e ByteString) Source #
runPinboardSingleJson :: (MonadIO m, MonadCatch m, MonadErrorPinboard e, FromJSON a) => PinboardConfig -> PinboardRequest -> m (e a) Source #
Sending
sendPinboardRequest :: MonadIO m => PinboardEnv -> PinboardRequest -> m (Response ByteString) Source #
Manager (http-client)
mgrFail :: (Monad m, MonadErrorPinboard e) => PinboardErrorType -> SomeException -> m (e b) Source #
JSON Handling
parseJSONResponse :: (MonadErrorPinboard e, FromJSON a) => Response ByteString -> e a Source #
decodeJSONResponse :: (MonadErrorPinboard e, FromJSON a) => ByteString -> e a Source #
Status Codes
checkStatusCodeResponse :: MonadErrorPinboard e => Response a -> e () Source #
checkStatusCode :: MonadErrorPinboard e => Int -> e () Source #
Error Helpers
addErrMsg :: Text -> PinboardError -> PinboardError Source #
createParserErr :: Text -> PinboardError Source #
httpStatusPinboardError :: MonadErrorPinboard e => PinboardErrorHTTPCode -> e a Source #