- data OAuth = OAuth {}
- data SignMethod
- = PLAINTEXT
- | HMACSHA1
- | RSASHA1 PrivateKey
- data Credential = Credential {
- unCredential :: [(ByteString, ByteString)]
- data OAuthException = OAuthException String
- emptyCredential :: Credential
- insert :: ByteString -> ByteString -> Credential -> Credential
- delete :: ByteString -> Credential -> Credential
- inserts :: [(ByteString, ByteString)] -> Credential -> Credential
- signOAuth :: OAuth -> Credential -> Request IO -> IO (Request IO)
- genSign :: MonadIO m => OAuth -> Credential -> Request m -> m ByteString
- authorizeUrl :: OAuth -> Credential -> String
- getAccessToken :: OAuth -> Credential -> IO Credential
- getTemporaryCredential :: OAuth -> IO Credential
- getTokenCredential :: OAuth -> Credential -> IO Credential
- paramEncode :: ByteString -> ByteString
Data types
Data type for OAuth client (consumer).
OAuth | |
|
data SignMethod Source
Data type for signature method.
data Credential Source
Data type for redential.
Credential | |
|
data OAuthException Source
Operations for credentials
emptyCredential :: CredentialSource
Empty credential.
:: ByteString | Parameter Name |
-> ByteString | Value |
-> Credential | Credential |
-> Credential | Result |
Insert an oauth parameter into given Credential
.
:: ByteString | Parameter name |
-> Credential | Credential |
-> Credential | Result |
Remove an oauth parameter for key from given Credential
.
inserts :: [(ByteString, ByteString)] -> Credential -> CredentialSource
Convenient method for inserting multiple parameters into credential.
Signature
:: OAuth | OAuth Application |
-> Credential | Credential |
-> Request IO | Original Request |
-> IO (Request IO) | Signed OAuth Request |
Add OAuth headers & sign to Request
.
genSign :: MonadIO m => OAuth -> Credential -> Request m -> m ByteStringSource
Url & operation for authentication
:: OAuth | OAuth Application |
-> Credential | Temporary Credential (Request Token & Secret) |
-> String | URL to authorize |
URL to obtain OAuth verifier.
:: OAuth | OAuth Application |
-> Credential | Temporary Credential with oauth_verifier |
-> IO Credential | Token Credential (Access Token & Secret) |
:: OAuth | OAuth Application |
-> IO Credential | Temporary Credential (Request Token & Secret). |
Get temporary credential for requesting acces token.
:: OAuth | OAuth Application |
-> Credential | Temporary Credential with oauth_verifier |
-> IO Credential | Token Credential (Access Token & Secret) |
Get Access token.
Utility Methods
paramEncode :: ByteString -> ByteStringSource
Encode a string using the percent encoding method for OAuth.