diff --git a/mercurial/wireprotoserver.py b/mercurial/wireprotoserver.py --- a/mercurial/wireprotoserver.py +++ b/mercurial/wireprotoserver.py @@ -40,6 +40,13 @@ __metaclass__ = abc.ABCMeta + @abc.abstractproperty + def name(self): + """The name of the protocol implementation. + + Used for uniquely identifying the transport type. + """ + @abc.abstractmethod def getargs(self, args): """return the value for arguments in @@ -95,7 +102,10 @@ def __init__(self, req, ui): self._req = req self._ui = ui - self.name = 'http' + + @property + def name(self): + return 'http' def getargs(self, args): knownargs = self._args() @@ -255,7 +265,6 @@ self._repo = repo self._fin = ui.fin self._fout = ui.fout - self.name = 'ssh' hook.redirect(True) ui.fout = repo.ui.fout = ui.ferr @@ -264,6 +273,10 @@ util.setbinary(self._fin) util.setbinary(self._fout) + @property + def name(self): + return 'ssh' + def getargs(self, args): data = {} keys = args.split()