| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Web.Twitter.Conduit.Base
Synopsis
- class ResponseBodyType a where
- parseResponseBody :: Response (ConduitM () ByteString (ResourceT IO) ()) -> ResourceT IO (Response a)
- type NoContent = ()
- getResponse :: MonadResource m => TWInfo -> Manager -> Request -> m (Response (ConduitM () ByteString m ()))
- call :: ResponseBodyType responseType => TWInfo -> Manager -> APIRequest apiName responseType -> IO responseType
- call' :: ResponseBodyType value => TWInfo -> Manager -> APIRequest apiName responseType -> IO value
- callWithResponse :: ResponseBodyType responseType => TWInfo -> Manager -> APIRequest apiName responseType -> IO (Response responseType)
- callWithResponse' :: ResponseBodyType value => TWInfo -> Manager -> APIRequest apiName responseType -> IO (Response value)
- checkResponse :: Response Value -> Either TwitterError Value
- sourceWithMaxId :: (MonadIO m, FromJSON responseType, AsStatus responseType, HasMaxIdParam (APIRequest apiName [responseType])) => TWInfo -> Manager -> APIRequest apiName [responseType] -> Source m responseType
- sourceWithMaxId' :: (MonadIO m, HasMaxIdParam (APIRequest apiName [responseType])) => TWInfo -> Manager -> APIRequest apiName [responseType] -> Source m Value
- sourceWithCursor :: (MonadIO m, FromJSON responseType, CursorKey ck, HasCursorParam (APIRequest apiName (WithCursor Integer ck responseType)) Integer) => TWInfo -> Manager -> APIRequest apiName (WithCursor Integer ck responseType) -> Source m responseType
- sourceWithCursor' :: (MonadIO m, CursorKey ck, HasCursorParam (APIRequest apiName (WithCursor Integer ck responseType)) Integer) => TWInfo -> Manager -> APIRequest apiName (WithCursor Integer ck responseType) -> Source m Value
- sourceWithSearchResult :: (MonadIO m, FromJSON responseType) => TWInfo -> Manager -> APIRequest apiName (SearchResult [responseType]) -> m (SearchResult (Source m responseType))
- sourceWithSearchResult' :: MonadIO m => TWInfo -> Manager -> APIRequest apiName (SearchResult [responseType]) -> m (SearchResult (Source m Value))
- endpoint :: String
- makeRequest :: APIRequest apiName responseType -> IO Request
- sinkJSON :: MonadThrow m => Consumer ByteString m Value
- sinkFromJSON :: (FromJSON a, MonadThrow m) => Consumer ByteString m a
Documentation
class ResponseBodyType a where Source #
Methods
parseResponseBody :: Response (ConduitM () ByteString (ResourceT IO) ()) -> ResourceT IO (Response a) Source #
Instances
| FromJSON a => ResponseBodyType a Source # | |
Defined in Web.Twitter.Conduit.Base | |
| ResponseBodyType NoContent Source # | |
Defined in Web.Twitter.Conduit.Base | |
getResponse :: MonadResource m => TWInfo -> Manager -> Request -> m (Response (ConduitM () ByteString m ())) Source #
Arguments
| :: ResponseBodyType responseType | |
| => TWInfo | Twitter Setting |
| -> Manager | |
| -> APIRequest apiName responseType | |
| -> IO responseType |
Perform an APIRequest and then provide the response which is mapped to a suitable type of
twitter-types.
Example:
user <-calltwInfo mgr $accountVerifyCredentialsprint user
If you need raw JSON value which is parsed by aeson,
use call' to obtain it.
Arguments
| :: ResponseBodyType value | |
| => TWInfo | Twitter Setting |
| -> Manager | |
| -> APIRequest apiName responseType | |
| -> IO value |
Perform an APIRequest and then provide the response.
The response of this function is not restrict to responseType,
so you can choose an arbitrarily type of FromJSON instances.
Arguments
| :: ResponseBodyType responseType | |
| => TWInfo | Twitter Setting |
| -> Manager | |
| -> APIRequest apiName responseType | |
| -> IO (Response responseType) |
Perform an APIRequest and then provide the Response.
Example:
res <-callWithResponsetwInfo mgr $accountVerifyCredentialsresponseStatusresresponseHeadersresresponseBodyres
callWithResponse' :: ResponseBodyType value => TWInfo -> Manager -> APIRequest apiName responseType -> IO (Response value) Source #
Perform an APIRequest and then provide the Response.
The response of this function is not restrict to responseType,
so you can choose an arbitrarily type of FromJSON instances.
Example:
res <-callWithResponse'twInfo mgr $accountVerifyCredentialsresponseStatusresresponseHeadersresresponseBody(res :: Value)
Arguments
| :: (MonadIO m, FromJSON responseType, AsStatus responseType, HasMaxIdParam (APIRequest apiName [responseType])) | |
| => TWInfo | Twitter Setting |
| -> Manager | |
| -> APIRequest apiName [responseType] | |
| -> Source m responseType |
A wrapper function to perform multiple API request with changing max_id parameter.
This function cooperate with instances of HasMaxIdParam.
Arguments
| :: (MonadIO m, HasMaxIdParam (APIRequest apiName [responseType])) | |
| => TWInfo | Twitter Setting |
| -> Manager | |
| -> APIRequest apiName [responseType] | |
| -> Source m Value |
A wrapper function to perform multiple API request with changing max_id parameter.
The response of this function is not restrict to responseType,
so you can choose an arbitrarily type of FromJSON instances.
This function cooperate with instances of HasMaxIdParam.
Arguments
| :: (MonadIO m, FromJSON responseType, CursorKey ck, HasCursorParam (APIRequest apiName (WithCursor Integer ck responseType)) Integer) | |
| => TWInfo | Twitter Setting |
| -> Manager | |
| -> APIRequest apiName (WithCursor Integer ck responseType) | |
| -> Source m responseType |
A wrapper function to perform multiple API request with changing cursor parameter.
This function cooperate with instances of HasCursorParam.
Arguments
| :: (MonadIO m, CursorKey ck, HasCursorParam (APIRequest apiName (WithCursor Integer ck responseType)) Integer) | |
| => TWInfo | Twitter Setting |
| -> Manager | |
| -> APIRequest apiName (WithCursor Integer ck responseType) | |
| -> Source m Value |
A wrapper function to perform multiple API request with changing cursor parameter.
The response of this function is not restrict to responseType,
so you can choose an arbitrarily type of FromJSON instances.
This function cooperate with instances of HasCursorParam.
sourceWithSearchResult Source #
Arguments
| :: (MonadIO m, FromJSON responseType) | |
| => TWInfo | Twitter Setting |
| -> Manager | |
| -> APIRequest apiName (SearchResult [responseType]) | |
| -> m (SearchResult (Source m responseType)) |
A wrapper function to perform multiple API request with SearchResult.
sourceWithSearchResult' Source #
Arguments
| :: MonadIO m | |
| => TWInfo | Twitter Setting |
| -> Manager | |
| -> APIRequest apiName (SearchResult [responseType]) | |
| -> m (SearchResult (Source m Value)) |
A wrapper function to perform multiple API request with SearchResult.
makeRequest :: APIRequest apiName responseType -> IO Request Source #
sinkJSON :: MonadThrow m => Consumer ByteString m Value Source #
sinkFromJSON :: (FromJSON a, MonadThrow m) => Consumer ByteString m a Source #