contentlocation, examinekey, lookupkey: Added --batch mode option.

This commit is contained in:
Joey Hess 2015-05-06 13:44:53 -04:00
parent 16fd222113
commit eeb0359a2e
8 changed files with 86 additions and 14 deletions

View file

@ -9,19 +9,20 @@ module Command.ContentLocation where
import Common.Annex
import Command
import CmdLine.Batch
import Annex.Content
cmd :: [Command]
cmd = [noCommit $ noMessages $
cmd = [withOptions [batchOption] $ noCommit $ noMessages $
command "contentlocation" (paramRepeating paramKey) seek
SectionPlumbing "looks up content for a key"]
seek :: CommandSeek
seek = withKeys start
seek = batchable withKeys start
start :: Key -> CommandStart
start k = do
liftIO . maybe exitFailure putStrLn
start :: Batchable Key
start batchmode k = do
maybe (batchBadInput batchmode) (liftIO . putStrLn)
=<< inAnnex' (pure True) Nothing check k
stop
where

View file

@ -9,21 +9,22 @@ module Command.ExamineKey where
import Common.Annex
import Command
import CmdLine.Batch
import qualified Utility.Format
import Command.Find (formatOption, getFormat, showFormatted, keyVars)
import Types.Key
cmd :: [Command]
cmd = [noCommit $ noMessages $ withOptions [formatOption, jsonOption] $
cmd = [noCommit $ noMessages $ withOptions [formatOption, jsonOption, batchOption] $
command "examinekey" (paramRepeating paramKey) seek
SectionPlumbing "prints information from a key"]
seek :: CommandSeek
seek ps = do
format <- getFormat
withKeys (start format) ps
batchable withKeys (start format) ps
start :: Maybe Utility.Format.Format -> Key -> CommandStart
start format key = do
start :: Maybe Utility.Format.Format -> Batchable Key
start format _ key = do
showFormatted format (key2file key) (keyVars key)
stop

View file

@ -9,18 +9,20 @@ module Command.LookupKey where
import Common.Annex
import Command
import CmdLine.Batch
import Annex.CatFile
import Types.Key
cmd :: [Command]
cmd = [notBareRepo $ noCommit $ noMessages $
cmd = [withOptions [batchOption] $ notBareRepo $ noCommit $ noMessages $
command "lookupkey" (paramRepeating paramFile) seek
SectionPlumbing "looks up key used for file"]
seek :: CommandSeek
seek = withStrings start
seek = batchable withStrings start
start :: String -> CommandStart
start file = do
liftIO . maybe exitFailure (putStrLn . key2file) =<< catKeyFile file
start :: Batchable String
start batchmode file = do
maybe (batchBadInput batchmode) (liftIO . putStrLn . key2file)
=<< catKeyFile file
stop