diff options
Diffstat (limited to 'Storage.hs')
-rw-r--r-- | Storage.hs | 18 |
1 files changed, 9 insertions, 9 deletions
@@ -16,15 +16,15 @@ import System.FilePath import Control.Monad import qualified Data.Set as S -allStorageLocations :: IO StorageLocations -allStorageLocations = do +allStorageLocations :: Maybe LocalStorageDirectory -> IO StorageLocations +allStorageLocations d = do servers <- networkServers return $ StorageLocations $ - map networkStorage servers <> map uploadQueue servers + map networkStorage servers <> map (uploadQueue d) servers -localStorageLocations :: StorageLocations -localStorageLocations = StorageLocations $ - map (localStorage userStorageDir . ("local" </>) . show) +localStorageLocations :: Maybe LocalStorageDirectory -> StorageLocations +localStorageLocations d = StorageLocations $ + map (localStorage (storageDir d) . ("local" </>) . show) [1..100 :: Int] type UpdateProgress = IO () @@ -99,7 +99,7 @@ retrieveShares (StorageLocations locs) sis updateprogress = do -- all of them. go (unusedlocs++[loc]) usedlocs' rest shares' -uploadQueued :: IO () -uploadQueued = do +uploadQueued :: Maybe LocalStorageDirectory -> IO () +uploadQueued d = do servers <- networkServers - forM_ servers $ \s -> moveShares (uploadQueue s) (networkStorage s) + forM_ servers $ \s -> moveShares (uploadQueue d s) (networkStorage s) |