diff --git a/src/Network/Minio.hs b/src/Network/Minio.hs index 73cfaf0..5c816b0 100644 --- a/src/Network/Minio.hs +++ b/src/Network/Minio.hs @@ -22,7 +22,7 @@ import Network.Minio.Data as , ConnectInfo(..) ) -import System.FilePath (FilePath) +-- import System.FilePath (FilePath) import qualified System.IO as IO import qualified Data.Conduit as C import qualified Control.Monad.Trans.Resource as R diff --git a/src/Network/Minio/API.hs b/src/Network/Minio/API.hs index edad4b8..82c3d6c 100644 --- a/src/Network/Minio/API.hs +++ b/src/Network/Minio/API.hs @@ -13,7 +13,6 @@ import qualified Network.HTTP.Types as HT import Network.HTTP.Conduit (Response) import qualified Network.HTTP.Conduit as NC import Network.HTTP.Types (Method, Header, Query) -import qualified Data.ByteString.Lazy as LBS import qualified Data.Conduit as C import Data.Conduit.Binary (sourceHandleRange) diff --git a/src/Network/Minio/Utils.hs b/src/Network/Minio/Utils.hs index 1ff1d35..cbfb4d0 100644 --- a/src/Network/Minio/Utils.hs +++ b/src/Network/Minio/Utils.hs @@ -8,8 +8,6 @@ import Network.HTTP.Conduit (Response) import qualified Data.Conduit as C import qualified Data.ByteString.Lazy as LBS import qualified Network.HTTP.Types as HT -import Control.Monad.Trans.Except (withExceptT, ExceptT(..), withExcept) -import Control.Monad.Base (MonadBase(..)) import qualified Control.Exception.Lifted as ExL @@ -17,9 +15,6 @@ import Lib.Prelude import Network.Minio.Data --- tryIO :: (MonadIO m, MonadError MinioErr m) => IO a -> m a --- tryIO act = either (throwError . MErrIO) return $ try act - allocateReadFile :: (R.MonadResource m, MonadError MinioErr m) => FilePath -> m (R.ReleaseKey, Handle) allocateReadFile fp = do @@ -29,7 +24,7 @@ allocateReadFile fp = do openReadFile f = runExceptT $ tryIO $ IO.openBinaryFile f IO.ReadMode cleanup = either (const $ return ()) IO.hClose - +isSuccessStatus :: HT.Status -> Bool isSuccessStatus sts = let s = HT.statusCode sts in (s >= 200 && s < 300) @@ -47,11 +42,9 @@ httpLbs req mgr = do throwError $ MErrService $ LBS.toStrict $ NC.responseBody resp return resp --- http :: (MonadError MinioErr m, R.MonadResourceBase m, R.MonadResource m) --- => NC.Request -> NC.Manager --- -> m (Response (C.ResumableSource m ByteString)) -http :: NC.Request -> NC.Manager - -> Minio (Response (C.ResumableSource Minio ByteString)) +http :: (MonadError MinioErr m, R.MonadResourceBase m, R.MonadResource m) + => NC.Request -> NC.Manager + -> m (Response (C.ResumableSource m ByteString)) http req mgr = do respE <- ExL.try $ NC.http req mgr resp <- checkEither MErrHttp respE diff --git a/src/Network/Minio/XmlParser.hs b/src/Network/Minio/XmlParser.hs index 854f22c..9a56f4f 100644 --- a/src/Network/Minio/XmlParser.hs +++ b/src/Network/Minio/XmlParser.hs @@ -12,6 +12,7 @@ import Lib.Prelude import Network.Minio.Data +s3TimeFormat :: [Char] s3TimeFormat = iso8601DateFormat $ Just "%T%QZ" parseListBuckets :: (MonadError MinioErr m) => LByteString -> m [BucketInfo]