From 28764ce2dc29d1d93989b4061b5b12bac10902de Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 8 Dec 2014 13:57:13 -0400 Subject: implement CLAIMURL for external special remote --- Remote/External.hs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'Remote/External.hs') diff --git a/Remote/External.hs b/Remote/External.hs index a8526566f..97aa247ba 100644 --- a/Remote/External.hs +++ b/Remote/External.hs @@ -70,7 +70,7 @@ gen r u c gc = do mkUnavailable = gen r u c $ gc { remoteAnnexExternalType = Just "!dne!" }, getInfo = return [("externaltype", externaltype)], - claimUrl = Nothing + claimUrl = Just (claimurl external) } where externaltype = fromMaybe (error "missing externaltype") (remoteAnnexExternalType gc) @@ -416,3 +416,12 @@ getAvailability external r gc = maybe query return (remoteAnnexAvailability gc) _ -> Nothing setRemoteAvailability r avail return avail + +claimurl :: External -> URLString -> Annex Bool +claimurl external url = + handleRequest external (CLAIMURL url) Nothing $ \req -> case req of + CLAIMURL_SUCCESS -> Just $ return True + CLAIMURL_FAILURE -> Just $ return False + UNSUPPORTED_REQUEST -> Just $ return False + _ -> Nothing + -- cgit v1.2.3