diff --git a/src/Network/Minio/ListOps.hs b/src/Network/Minio/ListOps.hs index 6125ad4..d9b1e2f 100644 --- a/src/Network/Minio/ListOps.hs +++ b/src/Network/Minio/ListOps.hs @@ -17,6 +17,7 @@ module Network.Minio.ListOps where import qualified Data.Conduit as C +import qualified Data.Conduit.Combinators as CC import qualified Data.Conduit.List as CL import Lib.Prelude @@ -55,9 +56,9 @@ listIncompleteUploads bucket prefix recurse = loop Nothing Nothing nextKeyMarker nextUploadIdMarker aggrSizes <- lift $ forM (lurUploads res) $ \((uKey, uId, _)) -> do - lPartsResult <- listIncompleteParts' bucket uKey uId Nothing Nothing + partInfos <- listIncompleteParts bucket uKey uId C.$$ CC.sinkList return $ foldl (\sizeSofar p -> opiSize p + sizeSofar) 0 - $ lprParts lPartsResult + $ partInfos CL.sourceList $ map (\((uKey, uId, uInitTime), size) -> @@ -65,7 +66,7 @@ listIncompleteUploads bucket prefix recurse = loop Nothing Nothing ) $ zip (lurUploads res) aggrSizes when (lurHasMore res) $ - loop nextKeyMarker nextUploadIdMarker + loop (lurNextKey res) (lurNextUpload res) -- | List object parts of an ongoing multipart upload for given diff --git a/src/Network/Minio/S3API.hs b/src/Network/Minio/S3API.hs index 5cfab5a..29cb864 100644 --- a/src/Network/Minio/S3API.hs +++ b/src/Network/Minio/S3API.hs @@ -54,7 +54,7 @@ module Network.Minio.S3API , abortMultipartUpload , ListUploadsResult , listIncompleteUploads' - , ListPartsResult + , ListPartsResult(..) , listIncompleteParts' -- * Deletion APIs