summaryrefslogtreecommitdiff
path: root/Command
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2011-03-15 21:34:13 -0400
committerGravatar Joey Hess <joey@kitenet.net>2011-03-15 21:34:13 -0400
commit9d49fe2c172b135a1a3735827df014b5f45d99a2 (patch)
tree32caea71926c1b05d9b1921a16f364f57fc3e62f /Command
parent675ee89749ba2272d37b763078020b6e5f4cd380 (diff)
first pass at using new keys
It compiles. It sorta works. Several subcommands are FIXME marked and broken, because things that used to accept separate --backend and --key params need to be changed to accept just a --key that encodes all the key info, now that there is metadata in keys.
Diffstat (limited to 'Command')
-rw-r--r--Command/DropKey.hs6
-rw-r--r--Command/DropUnused.hs5
-rw-r--r--Command/FromKey.hs2
-rw-r--r--Command/InAnnex.hs9
-rw-r--r--Command/Move.hs5
-rw-r--r--Command/RecvKey.hs3
-rw-r--r--Command/SendKey.hs3
-rw-r--r--Command/Unused.hs2
8 files changed, 25 insertions, 10 deletions
diff --git a/Command/DropKey.hs b/Command/DropKey.hs
index 8c7566df8..f0450eea3 100644
--- a/Command/DropKey.hs
+++ b/Command/DropKey.hs
@@ -26,8 +26,10 @@ seek = [withKeys start]
start :: CommandStartString
start keyname = do
backends <- Backend.list
- let key = genKey (head backends) keyname
- present <- inAnnex key
+ let key = error "fixme!!"
+ --let key = genKey (head backends) keyname --TODO FIXME
+ let present = error "fixme!!"
+ --present <- inAnnex key
force <- Annex.getState Annex.force
if not present
then return Nothing
diff --git a/Command/DropUnused.hs b/Command/DropUnused.hs
index 594564cb7..8ed61ba65 100644
--- a/Command/DropUnused.hs
+++ b/Command/DropUnused.hs
@@ -11,6 +11,7 @@ import Control.Monad (when)
import Control.Monad.State (liftIO)
import qualified Data.Map as M
import System.Directory
+import Data.Maybe
import Command
import Types
@@ -19,6 +20,7 @@ import Locations
import qualified Annex
import qualified Command.Drop
import Backend
+import Key
command :: [Command]
command = [Command "dropunused" (paramRepeating paramNumber) seek
@@ -55,7 +57,6 @@ readUnusedLog = do
return $ M.fromList $ map parse $ lines l
else return $ M.empty
where
- parse line = (head ws, tokey $ unwords $ tail ws)
+ parse line = (head ws, fromJust $ readKey $ unwords $ tail ws)
where
ws = words line
- tokey s = read s :: Key
diff --git a/Command/FromKey.hs b/Command/FromKey.hs
index 717d528bc..176d2cd54 100644
--- a/Command/FromKey.hs
+++ b/Command/FromKey.hs
@@ -16,9 +16,9 @@ import Command
import qualified Annex
import Utility
import qualified Backend
-import Types
import Content
import Messages
+import Key
command :: [Command]
command = [Command "fromkey" paramPath seek
diff --git a/Command/InAnnex.hs b/Command/InAnnex.hs
index 68ac9a2c6..4a4102754 100644
--- a/Command/InAnnex.hs
+++ b/Command/InAnnex.hs
@@ -11,9 +11,10 @@ import Control.Monad.State (liftIO)
import System.Exit
import Command
-import Types
import Content
import qualified Backend
+import qualified BackendTypes
+import Key
command :: [Command]
command = [Command "inannex" (paramRepeating paramKey) seek
@@ -25,7 +26,11 @@ seek = [withKeys start]
start :: CommandStartString
start keyname = do
backends <- Backend.list
- let key = genKey (head backends) keyname
+ let key = stubKey {
+ keyName = keyname,
+ keyBackendName = BackendTypes.name (head backends)
+ }
+ error "BROKEN. fixme!"
present <- inAnnex key
if present
then return Nothing
diff --git a/Command/Move.hs b/Command/Move.hs
index 3774ccbe9..1b1481308 100644
--- a/Command/Move.hs
+++ b/Command/Move.hs
@@ -20,7 +20,8 @@ import qualified Remotes
import UUID
import Messages
import Utility
-
+import Key
+
command :: [Command]
command = [Command "move" paramPath seek
"move content of files to/from another repository"]
@@ -136,7 +137,7 @@ fromCleanup :: Git.Repo -> Bool -> Key -> CommandCleanup
fromCleanup src True key = do
ok <- Remotes.onRemote src (boolSystem, False) "dropkey"
[ Params "--quiet --force"
- , Param $ "--backend=" ++ backendName key
+ , Param $ "--backend=" ++ keyBackendName key
, Param $ keyName key
]
-- better safe than sorry: assume the src dropped the key
diff --git a/Command/RecvKey.hs b/Command/RecvKey.hs
index 8a9673050..488bab62d 100644
--- a/Command/RecvKey.hs
+++ b/Command/RecvKey.hs
@@ -27,6 +27,8 @@ seek = [withKeys start]
start :: CommandStartString
start keyname = do
+ error "BROKEN FIXME!"
+ {-
backends <- Backend.list
let key = genKey (head backends) keyname
present <- inAnnex key
@@ -41,3 +43,4 @@ start keyname = do
_ <- shutdown
liftIO exitSuccess
else liftIO exitFailure
+ -}
diff --git a/Command/SendKey.hs b/Command/SendKey.hs
index cb883b53a..ff269f21f 100644
--- a/Command/SendKey.hs
+++ b/Command/SendKey.hs
@@ -28,6 +28,8 @@ seek = [withKeys start]
start :: CommandStartString
start keyname = do
+ error "BROKEN FIXME!"
+ {-
backends <- Backend.list
let key = genKey (head backends) keyname
present <- inAnnex key
@@ -36,3 +38,4 @@ start keyname = do
when present $
liftIO $ rsyncServerSend file
liftIO exitFailure
+ -}
diff --git a/Command/Unused.hs b/Command/Unused.hs
index a614ce5d9..52e483d87 100644
--- a/Command/Unused.hs
+++ b/Command/Unused.hs
@@ -126,4 +126,4 @@ tmpKeys = do
contents <- liftIO $ getDirectoryContents tmp
files <- liftIO $ filterM doesFileExist $
map (tmp </>) contents
- return $ map (fileKey . takeFileName) files
+ return $ catMaybes $ map (fileKey . takeFileName) files