Mercurial > public > mercurial-scm > hg-stable
diff mercurial/httprepo.py @ 2442:c660691fb45d
http: query server for capabilities
author | Vadim Gelfer <vadim.gelfer@gmail.com> |
---|---|
date | Thu, 15 Jun 2006 17:07:30 -0700 |
parents | e8c4f3d3df8c |
children | 1b2bbb2b4911 |
line wrap: on
line diff
--- a/mercurial/httprepo.py Thu Jun 15 16:41:49 2006 -0700 +++ b/mercurial/httprepo.py Thu Jun 15 17:07:30 2006 -0700 @@ -71,7 +71,7 @@ class httprepository(remoterepository): def __init__(self, ui, path): - self.capabilities = () + self.caps = None scheme, netloc, urlpath, query, frag = urlparse.urlsplit(path) if query or frag: raise util.Abort(_('unsupported URL component: "%s"') % @@ -145,6 +145,18 @@ opener.addheaders = [('User-agent', 'mercurial/proto-1.0')] urllib2.install_opener(opener) + # look up capabilities only when needed + + def get_caps(self): + if self.caps is None: + try: + self.caps = self.do_read('capabilities').split() + except hg.RepoError: + self.caps = () + return self.caps + + capabilities = property(get_caps) + def dev(self): return -1