diff options
author | Joey Hess <joeyh@joeyh.name> | 2016-08-03 12:37:12 -0400 |
---|---|---|
committer | Joey Hess <joeyh@joeyh.name> | 2016-08-03 12:37:12 -0400 |
commit | 508517de485e77196a8d8e33558f4185c50dea96 (patch) | |
tree | 319fc6e63da144e40dd124a07f4bb6c0ad25c5ee /Types/Transfer.hs | |
parent | 019733f00d01301d71acc46245d2dc130934d951 (diff) |
get, move, copy, mirror: Added --failed switch which retries failed copies/moves
Note that get --from foo --failed will get things that a previous get --from bar
tried and failed to get, etc. I considered making --failed only retry
transfers from the same remote, but it was easier, and seems more useful,
to not have the same remote requirement.
Noisy due to some refactoring into Types/
Diffstat (limited to 'Types/Transfer.hs')
-rw-r--r-- | Types/Transfer.hs | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/Types/Transfer.hs b/Types/Transfer.hs new file mode 100644 index 000000000..528d1d5cb --- /dev/null +++ b/Types/Transfer.hs @@ -0,0 +1,47 @@ +{- git-annex transfer types + - + - Copyright 2012 Joey Hess <id@joeyh.name> + - + - Licensed under the GNU GPL version 3 or higher. + -} + +module Types.Transfer where + +import Types +import Utility.PID + +import Data.Time.Clock.POSIX +import Control.Concurrent + +{- Enough information to uniquely identify a transfer, used as the filename + - of the transfer information file. -} +data Transfer = Transfer + { transferDirection :: Direction + , transferUUID :: UUID + , transferKey :: Key + } + deriving (Eq, Ord, Read, Show) + +{- Information about a Transfer, stored in the transfer information file. + - + - Note that the associatedFile may not correspond to a file in the local + - git repository. It's some file, possibly relative to some directory, + - of some repository, that was acted on to initiate the transfer. + -} +data TransferInfo = TransferInfo + { startedTime :: Maybe POSIXTime + , transferPid :: Maybe PID + , transferTid :: Maybe ThreadId + , transferRemote :: Maybe Remote + , bytesComplete :: Maybe Integer + , associatedFile :: Maybe FilePath + , transferPaused :: Bool + } + deriving (Show, Eq, Ord) + +stubTransferInfo :: TransferInfo +stubTransferInfo = TransferInfo Nothing Nothing Nothing Nothing Nothing Nothing False + +data Direction = Upload | Download + deriving (Eq, Ord, Read, Show) + |