X-Git-Url: http://gitweb.michael.orlitzky.com/?p=dead%2Fhalcyon.git;a=blobdiff_plain;f=src%2FTwitter%2FHttp.hs;h=3b834859f37fcdbeeec0892588024da794238d60;hp=112c2ea2fa293f75aa16382ab7770b07c9607c2f;hb=d721869c5e7395c021cc79f40720bdb275d613d2;hpb=9b6d95a82745ced2a58d9bc4ded555ee36b36673 diff --git a/src/Twitter/Http.hs b/src/Twitter/Http.hs index 112c2ea..3b83485 100644 --- a/src/Twitter/Http.hs +++ b/src/Twitter/Http.hs @@ -13,6 +13,8 @@ import Web.Authenticate.OAuth ( newOAuth, signOAuth) +import Configuration + -- |The API URL of username's timeline. -- -- See, @@ -43,37 +45,35 @@ status_url status_id = -- "since_id" parameter tacked on. user_new_statuses_url :: String -> Integer -> String user_new_statuses_url username last_status_id = - concat [ user_timeline_url username, - "&since_id=" ++ (show last_status_id) ] - + url ++ "&since_id=" ++ since_id + where + url = user_timeline_url username + since_id = show last_status_id -get_status :: Integer -> IO B.ByteString -get_status status_id = do - let uri = (status_url status_id) - status <- (http_get uri) - return status +get_status :: Cfg -> Integer -> IO B.ByteString +get_status cfg status_id = do + let uri = status_url status_id + http_get cfg uri -- | Return's username's timeline. -get_user_timeline :: String -> IO B.ByteString -get_user_timeline username = do - let uri = (user_timeline_url username) - timeline <- (http_get uri) - return timeline +get_user_timeline :: Cfg -> String -> IO B.ByteString +get_user_timeline cfg username = do + let uri = user_timeline_url username + http_get cfg uri -- | Returns the JSON representing all of username's statuses that are -- newer than last_status_id. -get_user_new_statuses :: String -> Integer -> IO B.ByteString -get_user_new_statuses username last_status_id = do - let uri = (user_new_statuses_url username last_status_id) - new_statuses <- (http_get uri) - return new_statuses +get_user_new_statuses :: Cfg -> String -> Integer -> IO B.ByteString +get_user_new_statuses cfg username last_status_id = do + let uri = user_new_statuses_url username last_status_id + http_get cfg uri -- | Retrieve a URL, or crash. -http_get :: String -> IO B.ByteString -http_get url = do +http_get :: Cfg -> String -> IO B.ByteString +http_get cfg url = do manager <- newManager def request <- parseUrl url @@ -83,16 +83,16 @@ http_get url = do responseBody response C.$$+- sinkLbs where - consumer_key = BC.pack "" - consumer_secret = BC.pack "" - access_token = BC.pack "" - access_secret = BC.pack "" + consumer_key' = BC.pack (consumer_key cfg) + consumer_secret' = BC.pack (consumer_secret cfg) + access_token' = BC.pack (access_token cfg) + access_secret' = BC.pack (access_secret cfg) oauth :: OAuth oauth = newOAuth { - oauthConsumerKey = consumer_key, - oauthConsumerSecret = consumer_secret + oauthConsumerKey = consumer_key', + oauthConsumerSecret = consumer_secret' } credential :: Credential - credential = newCredential access_token access_secret + credential = newCredential access_token' access_secret'