From b40d441c52f37584653e74fada9906cc8105c9f7 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Thu, 6 Oct 2016 13:54:52 -0400 Subject: move level from Server to Storage This allows local storage locations to have levels too, and also get shuffled nicely. This commit was sponsored by Ethan Aubin. --- Storage/Local.hs | 5 +++-- Storage/Network.hs | 7 ++++--- 2 files changed, 7 insertions(+), 5 deletions(-) (limited to 'Storage') diff --git a/Storage/Local.hs b/Storage/Local.hs index e061831..6dcaaae 100644 --- a/Storage/Local.hs +++ b/Storage/Local.hs @@ -35,13 +35,14 @@ type GetShareDir = Section -> IO FilePath newtype Section = Section String -localStorage :: GetShareDir -> String -> Storage -localStorage getsharedir n = Storage +localStorage :: StorageLevel -> GetShareDir -> String -> Storage +localStorage storagelevel getsharedir n = Storage { storeShare = store section getsharedir , retrieveShare = retrieve section getsharedir , obscureShares = obscure section getsharedir , countShares = count section getsharedir , moveShares = move section getsharedir + , storageLevel = storagelevel , uploadQueue = Nothing , getServer = Nothing } diff --git a/Storage/Network.hs b/Storage/Network.hs index f8169c9..e2004cc 100644 --- a/Storage/Network.hs +++ b/Storage/Network.hs @@ -17,15 +17,16 @@ import HTTP.Client import HTTP.ProofOfWork import System.FilePath -networkStorage :: Maybe LocalStorageDirectory -> Server -> Storage -networkStorage localdir server = Storage +networkStorage :: StorageLevel -> Maybe LocalStorageDirectory -> Server -> Storage +networkStorage storagelevel localdir server = Storage { storeShare = store server , retrieveShare = retrieve server , obscureShares = obscure server , countShares = count server , moveShares = move server - , uploadQueue = Just $ localStorage (storageDir localdir) + , uploadQueue = Just $ localStorage storagelevel (storageDir localdir) ("uploadqueue" name) + , storageLevel = storagelevel , getServer = Just server } where -- cgit v1.2.3