summaryrefslogtreecommitdiff
path: root/Remote/Directory.hs
diff options
context:
space:
mode:
authorGravatar Joey Hess <joeyh@joeyh.name>2017-09-01 13:02:07 -0400
committerGravatar Joey Hess <joeyh@joeyh.name>2017-09-01 13:05:09 -0400
commit2aea8192e1769c4acfbc130ba4d788abd5ee4539 (patch)
tree9713e2dfbca20263acebe53028ae949bb467b78b /Remote/Directory.hs
parent441a5dfc2fd112fd165b95fb1106f15a1255e72a (diff)
refactor ExportActions
This will allow disabling exports for remotes that are not configured to allow them. Also, exportSupported will be useful for the external special remote to probe. This commit was supported by the NSF-funded DataLad project
Diffstat (limited to 'Remote/Directory.hs')
-rw-r--r--Remote/Directory.hs14
1 files changed, 9 insertions, 5 deletions
diff --git a/Remote/Directory.hs b/Remote/Directory.hs
index f5d7f7e49..e2e517b84 100644
--- a/Remote/Directory.hs
+++ b/Remote/Directory.hs
@@ -25,6 +25,7 @@ import Config.Cost
import Config
import Utility.FileMode
import Remote.Helper.Special
+import Remote.Helper.Export
import qualified Remote.Directory.LegacyChunked as Legacy
import Annex.Content
import Annex.UUID
@@ -59,11 +60,14 @@ gen r u c gc = do
, lockContent = Nothing
, checkPresent = checkPresentDummy
, checkPresentCheap = True
- , storeExport = Just $ storeExportDirectory dir
- , retrieveExport = Just $ retrieveExportDirectory dir
- , removeExport = Just $ removeExportDirectory dir
- , checkPresentExport = Just $ checkPresentExportDirectory dir
- , renameExport = Just $ renameExportDirectory dir
+ , exportActions = ExportActions
+ { exportSupported = return True
+ , storeExport = storeExportDirectory dir
+ , retrieveExport = retrieveExportDirectory dir
+ , removeExport = removeExportDirectory dir
+ , checkPresentExport = checkPresentExportDirectory dir
+ , renameExport = renameExportDirectory dir
+ }
, whereisKey = Nothing
, remoteFsck = Nothing
, repairRepo = Nothing