# HG changeset patch # User Gregory Szorc # Date 2018-02-08 04:24:22 # Node ID 957e773614d0183c8f92f31adb0b926d9e3eb59a # Parent 56fe8a3b2d5250afd516fe5d5b9a676de12caf62 wireprotoserver: rename _client to client (API) This method is called in wireproto.py. It should be part of the public API/interface. .. api:: The ``_client()`` method of the wire protocol handler interface has been renamed to ``client()``. Differential Revision: https://phab.mercurial-scm.org/D2084 diff --git a/mercurial/wireproto.py b/mercurial/wireproto.py --- a/mercurial/wireproto.py +++ b/mercurial/wireproto.py @@ -1023,7 +1023,7 @@ def unbundle(repo, proto, heads): hint=bundle2requiredhint) r = exchange.unbundle(repo, gen, their_heads, 'serve', - proto._client()) + proto.client()) if util.safehasattr(r, 'addpart'): # The return looks streamable, we are in the bundle2 case # and should return a stream. diff --git a/mercurial/wireprotoserver.py b/mercurial/wireprotoserver.py --- a/mercurial/wireprotoserver.py +++ b/mercurial/wireprotoserver.py @@ -88,6 +88,10 @@ class baseprotocolhandler(object): won't be captured. """ + @abc.abstractmethod + def client(self): + """Returns a string representation of this client (as bytes).""" + def decodevaluefromheaders(req, headerprefix): """Decode a long value from multiple HTTP request headers. @@ -164,7 +168,7 @@ class webproto(baseprotocolhandler): self._ui.fout = oldout self._ui.ferr = olderr - def _client(self): + def client(self): return 'remote:%s:%s:%s' % ( self._req.env.get('wsgi.url_scheme') or 'http', urlreq.quote(self._req.env.get('REMOTE_HOST', '')), @@ -399,7 +403,7 @@ class sshv1protocolhandler(baseprotocolh def mayberedirectstdio(self): yield None - def _client(self): + def client(self): client = encoding.environ.get('SSH_CLIENT', '').split(' ', 1)[0] return 'remote:ssh:' + client