packages feed

hoauth 0.3.2 → 0.3.2.1

raw patch · 2 files changed

+61/−1 lines, 2 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- Network.OAuth.Consumer: instance (Monad m) => Monad (OAuthMonadT m)
- Network.OAuth.Consumer: instance (MonadIO m) => MonadIO (OAuthMonadT m)
- Network.OAuth.Http.PercentEncoding: instance (PercentEncoding a) => PercentEncoding [a]
+ Network.OAuth.Consumer: instance Monad m => Monad (OAuthMonadT m)
+ Network.OAuth.Consumer: instance MonadIO m => MonadIO (OAuthMonadT m)
+ Network.OAuth.Http.DebugHttpClient: DebugClient :: c -> (Request -> IO ()) -> (Response -> IO ()) -> (String -> IO ()) -> DebugClient c
+ Network.OAuth.Http.DebugHttpClient: backend :: DebugClient c -> c
+ Network.OAuth.Http.DebugHttpClient: data DebugClient c
+ Network.OAuth.Http.DebugHttpClient: instance HttpClient c => HttpClient (DebugClient c)
+ Network.OAuth.Http.DebugHttpClient: stdDebugClient :: HttpClient c => c -> DebugClient c
+ Network.OAuth.Http.DebugHttpClient: traceErr :: DebugClient c -> String -> IO ()
+ Network.OAuth.Http.DebugHttpClient: traceRp :: DebugClient c -> Response -> IO ()
+ Network.OAuth.Http.DebugHttpClient: traceRq :: DebugClient c -> Request -> IO ()
+ Network.OAuth.Http.PercentEncoding: instance PercentEncoding a => PercentEncoding [a]
- Network.OAuth.Consumer: cliAskAuthorization :: (MonadIO m) => (Token -> String) -> OAuthMonadT m ()
+ Network.OAuth.Consumer: cliAskAuthorization :: MonadIO m => (Token -> String) -> OAuthMonadT m ()
- Network.OAuth.Consumer: getToken :: (Monad m) => OAuthMonadT m Token
+ Network.OAuth.Consumer: getToken :: Monad m => OAuthMonadT m Token
- Network.OAuth.Consumer: ignite :: (MonadIO m) => Application -> OAuthMonadT m ()
+ Network.OAuth.Consumer: ignite :: MonadIO m => Application -> OAuthMonadT m ()
- Network.OAuth.Consumer: putToken :: (Monad m) => Token -> OAuthMonadT m ()
+ Network.OAuth.Consumer: putToken :: Monad m => Token -> OAuthMonadT m ()
- Network.OAuth.Consumer: runOAuth :: (Monad m) => (String -> m a) -> Token -> OAuthMonadT m a -> m a
+ Network.OAuth.Consumer: runOAuth :: Monad m => (String -> m a) -> Token -> OAuthMonadT m a -> m a
- Network.OAuth.Consumer: runOAuthM :: (Monad m) => Token -> OAuthMonadT m a -> m a
+ Network.OAuth.Consumer: runOAuthM :: Monad m => Token -> OAuthMonadT m a -> m a
- Network.OAuth.Consumer: signRq :: (MonadIO m) => Token -> SigMethod -> Maybe Realm -> Request -> m OAuthRequest
+ Network.OAuth.Consumer: signRq :: MonadIO m => Token -> SigMethod -> Maybe Realm -> Request -> m OAuthRequest
- Network.OAuth.Consumer: signRq2 :: (MonadIO m) => SigMethod -> Maybe Realm -> Request -> OAuthMonadT m OAuthRequest
+ Network.OAuth.Consumer: signRq2 :: MonadIO m => SigMethod -> Maybe Realm -> Request -> OAuthMonadT m OAuthRequest
- Network.OAuth.Http.PercentEncoding: decode :: (PercentEncoding a) => String -> Maybe (a, String)
+ Network.OAuth.Http.PercentEncoding: decode :: PercentEncoding a => String -> Maybe (a, String)
- Network.OAuth.Http.PercentEncoding: decodeWithDefault :: (PercentEncoding a) => a -> String -> a
+ Network.OAuth.Http.PercentEncoding: decodeWithDefault :: PercentEncoding a => a -> String -> a
- Network.OAuth.Http.PercentEncoding: encode :: (PercentEncoding a) => a -> String
+ Network.OAuth.Http.PercentEncoding: encode :: PercentEncoding a => a -> String

Files

hoauth.cabal view
@@ -1,5 +1,5 @@ name: hoauth-version: 0.3.2+version: 0.3.2.1 category: Network,Protocol,OAuth license: BSD3 license-file: LICENSE@@ -33,6 +33,7 @@                  , Network.OAuth.Http.Response                  , Network.OAuth.Http.HttpClient                  , Network.OAuth.Http.CurlHttpClient+                 , Network.OAuth.Http.DebugHttpClient                  , Network.OAuth.Http.PercentEncoding                  , Network.OAuth.Http.Util                  , Network.OAuth.Consumer
+ src/main/haskell/Network/OAuth/Http/DebugHttpClient.hs view
@@ -0,0 +1,59 @@+-- Copyright (c) 2009, Diego Souza+-- All rights reserved.+-- +-- Redistribution and use in source and binary forms, with or without+-- modification, are permitted provided that the following conditions are met:+-- +--   * Redistributions of source code must retain the above copyright notice,+--     this list of conditions and the following disclaimer.+--   * Redistributions in binary form must reproduce the above copyright notice,+--     this list of conditions and the following disclaimer in the documentation+--     and/or other materials provided with the distribution.+--   * Neither the name of the <ORGANIZATION> nor the names of its contributors+--     may be used to endorse or promote products derived from this software+--     without specific prior written permission.+-- +-- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND+-- ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED+-- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE+-- DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE+-- FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL+-- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR+-- SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER+-- CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,+-- OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE+-- OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.++-- | Minimum definition of a user agent required to implement oauth+-- service calls. This should suffice for most applications.+module Network.OAuth.Http.DebugHttpClient+       ( DebugClient(..)+       , stdDebugClient+       ) where++import Network.OAuth.Http.HttpClient+import Network.OAuth.Http.Request+import Network.OAuth.Http.Response+import Control.Monad.Trans++-- | A client that is able to debug interaction with HTTP servers.+data DebugClient c = DebugClient { backend  :: c+                                 , traceRq  :: Request -> IO ()+                                 , traceRp  :: Response -> IO ()+                                 , traceErr :: String -> IO ()+                                 }++-- | Creates the a instance which prints messages using putStrLn.+stdDebugClient :: (HttpClient c) => c -> DebugClient c+stdDebugClient c = DebugClient { backend  = c+                               , traceRq  = putStrLn . ("Request: " ++) . show+                               , traceRp  = putStrLn . ("Response: " ++) . show+                               , traceErr = putStrLn . ("Error: "++) . show+                               }++instance (HttpClient c) => HttpClient (DebugClient c) where+  runClient debug req = do { liftIO (traceRq debug $ req)+                           ; rsp <- runClient (backend debug) req+                           ; liftIO (either (traceErr debug) (traceRp debug) $ rsp)+                           ; return rsp+                           }