packages feed

ftp-client-conduit 0.2.0.0 → 0.3.0.0

raw patch · 2 files changed

+30/−28 lines, 2 filesdep ~ftp-clientPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: ftp-client

API changes (from Hackage documentation)

- Network.FTP.Client.Conduit: listS :: MonadResource m => Handle -> [String] -> Producer m ByteString
- Network.FTP.Client.Conduit: nlstS :: MonadResource m => Handle -> [String] -> Producer m ByteString
- Network.FTP.Client.Conduit: retrS :: MonadResource m => Handle -> String -> Producer m ByteString
- Network.FTP.Client.Conduit: storS :: MonadResource m => Handle -> String -> RTypeCode -> Consumer ByteString m ()

Files

ftp-client-conduit.cabal view
@@ -1,5 +1,5 @@ name: ftp-client-conduit-version: 0.2.0.0+version: 0.3.0.0 cabal-version: >=1.10 build-type: Simple license: PublicDomain@@ -23,7 +23,7 @@         Network.FTP.Client.Conduit     build-depends:         base >=4.7 && <5,-        ftp-client ==0.2.*,+        ftp-client ==0.3.*,         conduit >=1.1 && <1.3,         bytestring >=0.10.8.1 && <0.11,         resourcet ==1.1.*,
src/Network/FTP/Client/Conduit.hs view
@@ -11,11 +11,6 @@     retr,     list,     stor,-    -- * Secure data commands-    nlstS,-    retrS,-    listS,-    storS ) where  import Data.Conduit@@ -34,6 +29,7 @@     , getMultiLineResp     , sIOHandleImpl     , tlsHandleImpl+    , Security(..)     )  import qualified Network.FTP.Client as FTP@@ -44,6 +40,15 @@ import System.IO.Error import Network.Connection +debugging :: Bool+debugging = False++debugPrint :: (Show a, MonadIO m) => a -> m ()+debugPrint s = debugPrint' s debugging+    where+        debugPrint' _ False = return ()+        debugPrint' s True = liftIO $ print s+ getAllLineRespC :: MonadIO m => FTP.Handle -> Producer m ByteString getAllLineRespC h = loop     where@@ -67,6 +72,18 @@                     liftIO $ FTP.sendLine h x                     loop +sourceDataCommandSecurity+    :: MonadResource m+    => FTP.Handle+    -> PortActivity+    -> [FTPCommand]+    -> (FTP.Handle -> ConduitM i o m r)+    -> ConduitM i o m r+sourceDataCommandSecurity h =+    case FTP.security h of+        Clear -> sourceDataCommand h+        TLS -> sourceTLSDataCommand h+ sourceDataCommand     :: MonadResource m     => FTP.Handle@@ -80,7 +97,7 @@         hClose         (f . sIOHandleImpl)     resp <- liftIO $ getMultiLineResp ch-    liftIO $ print $ "Recieved: " <> (show resp)+    debugPrint $ "Recieved: " <> (show resp)     return x  sourceTLSDataCommand@@ -96,7 +113,7 @@         connectionClose         (f . tlsHandleImpl)     resp <- liftIO $ getMultiLineResp ch-    liftIO $ print $ "Recieved: " <> (show resp)+    debugPrint $ "Recieved: " <> (show resp)     return x  sourceHandle :: MonadIO m => FTP.Handle -> Producer m ByteString@@ -127,29 +144,14 @@ sendType TI h = sinkHandle h  nlst :: MonadResource m => FTP.Handle -> [String] -> Producer m ByteString-nlst ch args = sourceDataCommand ch Passive [RType TA, Nlst args] getAllLineRespC+nlst ch args = sourceDataCommandSecurity ch Passive [RType TA, Nlst args] getAllLineRespC  retr :: MonadResource m => FTP.Handle -> String -> Producer m ByteString-retr ch path = sourceDataCommand ch Passive [RType TI, Retr path] sourceHandle+retr ch path = sourceDataCommandSecurity ch Passive [RType TI, Retr path] sourceHandle  list :: MonadResource m => FTP.Handle -> [String] -> Producer m ByteString-list ch args = sourceDataCommand ch Passive [RType TA, List args] getAllLineRespC+list ch args = sourceDataCommandSecurity ch Passive [RType TA, List args] getAllLineRespC  stor :: MonadResource m => FTP.Handle -> String -> RTypeCode -> Consumer ByteString m () stor ch loc rtype =-    sourceDataCommand ch Passive [RType rtype, Stor loc] $ sendType rtype---- TLS--nlstS :: MonadResource m => FTP.Handle -> [String] -> Producer m ByteString-nlstS ch args = sourceTLSDataCommand ch Passive [RType TA, Nlst args] getAllLineRespC--retrS :: MonadResource m => FTP.Handle -> String -> Producer m ByteString-retrS ch path = sourceTLSDataCommand ch Passive [RType TI, Retr path] sourceHandle--listS :: MonadResource m => FTP.Handle -> [String] -> Producer m ByteString-listS ch args = sourceTLSDataCommand ch Passive [RType TA, List args] getAllLineRespC--storS :: MonadResource m => FTP.Handle -> String -> RTypeCode -> Consumer ByteString m ()-storS ch loc rtype =-    sourceTLSDataCommand ch Passive [RType rtype, Stor loc] $ sendType rtype+    sourceDataCommandSecurity ch Passive [RType rtype, Stor loc] $ sendType rtype