summaryrefslogtreecommitdiff
path: root/doc/design
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2014-01-01 20:12:20 -0400
committerGravatar Joey Hess <joey@kitenet.net>2014-01-01 20:12:20 -0400
commit08b48fa3ee2cb817b41c56470be8cf6c3cee7f27 (patch)
tree3e01c1d3a781320e7794374f7bb4fb94c87bc000 /doc/design
parenta62d941be1e90d13d4dddbe86d75c050f22cd61d (diff)
added GETWANTED, SETWANTED for Tobias's flickr remote
This was unexpectedly difficult because of a depdenency cycle. To parse a preferred content expression involves several things that need to operate on the list of remotes. Which needs Remote.External. The only way to avoid this cycle (I tried breaking it at several points) was to skip parsing the expression in SETWANTED. That's sorta ok, because git-annex already has to deal with unparsable preferred content expressions being stored, in order to handle eg, upgrades. But I'm still not very happy that I cannot check it. I feel this is a strong indication that I need to beware of further bloating the special remote protocol interface.
Diffstat (limited to 'doc/design')
-rw-r--r--doc/design/external_special_remote_protocol.mdwn10
1 files changed, 10 insertions, 0 deletions
diff --git a/doc/design/external_special_remote_protocol.mdwn b/doc/design/external_special_remote_protocol.mdwn
index 8214a48a8..138d9dd18 100644
--- a/doc/design/external_special_remote_protocol.mdwn
+++ b/doc/design/external_special_remote_protocol.mdwn
@@ -212,6 +212,16 @@ in control.
* `GETUUID`
Queries for the UUID of the special remote being used.
(git-annex replies with VALUE followed by the UUID.)
+* `SETWANTED PreferredContentExpression`
+ Can be used to set the preferred content of a repository. Normally
+ this is not configured by a special remote, but it may make sense
+ in some situations to hint at the kind of content that should be stored
+ in the special remote. Note that if a unparsable expression is set,
+ git-annex will ignore it.
+* `GETWANTED`
+ Gets the current preferred content setting of the repository.
+ (git-annex replies with VALUE followed by the preferred content
+ expression.)
## general messages