simplify interface by removing size
Add size to the returned key after the fact, unless the remote happened to add it itself.
This commit is contained in:
		
					parent
					
						
							
								85cd79ea01
							
						
					
				
			
			
				commit
				
					
						57cceac569
					
				
			
		
					 3 changed files with 8 additions and 4 deletions
				
			
		| 
						 | 
				
			
			@ -391,7 +391,11 @@ importKeys remote importtreeconfig importcontent importablecontents = do
 | 
			
		|||
			Nothing -> error "internal" -- checked earlier
 | 
			
		||||
			Just a -> do
 | 
			
		||||
				let importer p = do
 | 
			
		||||
					k <- a loc cid sz p
 | 
			
		||||
					unsizedk <- a loc cid p
 | 
			
		||||
					-- This avoids every remote needing
 | 
			
		||||
					-- to add the size.
 | 
			
		||||
					let k = alterKey unsizedk $ \kd -> kd
 | 
			
		||||
						{ keySize = keySize kd <|> Just sz }
 | 
			
		||||
					checkSecureHashes k >>= \case
 | 
			
		||||
						Nothing -> do
 | 
			
		||||
							recordcidkey cidmap db cid k
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -350,8 +350,8 @@ guardSameContentIdentifiers cont old new
 | 
			
		|||
	| new == Just old = cont
 | 
			
		||||
	| otherwise = giveup "file content has changed"
 | 
			
		||||
 | 
			
		||||
importKeyM :: FilePath -> ExportLocation -> ContentIdentifier -> ByteSize -> MeterUpdate -> Annex Key
 | 
			
		||||
importKeyM dir loc cid sz p = do
 | 
			
		||||
importKeyM :: FilePath -> ExportLocation -> ContentIdentifier -> MeterUpdate -> Annex Key
 | 
			
		||||
importKeyM dir loc cid p = do
 | 
			
		||||
	backend <- chooseBackend (fromRawFilePath f)
 | 
			
		||||
	k <- fst <$> genKey ks p backend
 | 
			
		||||
	currcid <- liftIO $ mkContentIdentifier absf =<< getFileStatus absf
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -287,7 +287,7 @@ data ImportActions a = ImportActions
 | 
			
		|||
	-- since the ContentIdentifier was generated.
 | 
			
		||||
	--
 | 
			
		||||
	-- Throws exception on failure.
 | 
			
		||||
	, importKey :: Maybe (ExportLocation -> ContentIdentifier -> ByteSize -> MeterUpdate -> a Key)
 | 
			
		||||
	, importKey :: Maybe (ExportLocation -> ContentIdentifier -> MeterUpdate -> a Key)
 | 
			
		||||
	-- Retrieves a file from the remote. Ensures that the file
 | 
			
		||||
	-- it retrieves has the requested ContentIdentifier.
 | 
			
		||||
	--
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue