[PATCH 7 of 7] commandserver: drop old unixservice implementation
Augie Fackler
raf at durin42.com
Fri Jul 15 13:23:34 EDT 2016
On Fri, Jul 15, 2016 at 12:20:45AM +0900, Yuya Nishihara wrote:
> # HG changeset patch
> # User Yuya Nishihara <yuya at tcha.org>
> # Date 1463892309 -32400
> # Sun May 22 13:45:09 2016 +0900
> # Node ID 2a692364f43bf27862ab001b905c5c8d61e59e6d
> # Parent 32d05eda38ffd0a224a77914eea9fa14322aac32
> commandserver: drop old unixservice implementation
Queued this, thanks!
>
> It's been superseded by unixforkingservice.
>
> diff --git a/mercurial/commandserver.py b/mercurial/commandserver.py
> --- a/mercurial/commandserver.py
> +++ b/mercurial/commandserver.py
> @@ -25,8 +25,6 @@ from . import (
> util,
> )
>
> -socketserver = util.socketserver
> -
> logfile = None
>
> def log(*args):
> @@ -423,48 +421,19 @@ class unixservicehandler(object):
> serves for the current connection"""
> return server(self.ui, repo, fin, fout)
>
> -class _requesthandler(socketserver.BaseRequestHandler):
> - def handle(self):
> - _serverequest(self.server.ui, self.server.repo, self.request,
> - self._createcmdserver)
> -
> - def _createcmdserver(self, repo, conn, fin, fout):
> - ui = self.server.ui
> - return server(ui, repo, fin, fout)
> -
> -class unixservice(object):
> +class unixforkingservice(object):
> """
> Listens on unix domain socket and forks server per connection
> """
> - def __init__(self, ui, repo, opts):
> +
> + def __init__(self, ui, repo, opts, handler=None):
> self.ui = ui
> self.repo = repo
> self.address = opts['address']
> - if not util.safehasattr(socketserver, 'UnixStreamServer'):
> + if not util.safehasattr(socket, 'AF_UNIX'):
> raise error.Abort(_('unsupported platform'))
> if not self.address:
> raise error.Abort(_('no socket path specified with --address'))
> -
> - def init(self):
> - class cls(socketserver.ForkingMixIn, socketserver.UnixStreamServer):
> - ui = self.ui
> - repo = self.repo
> - self.server = cls(self.address, _requesthandler)
> - self.ui.status(_('listening at %s\n') % self.address)
> - self.ui.flush() # avoid buffering of status message
> -
> - def _cleanup(self):
> - os.unlink(self.address)
> -
> - def run(self):
> - try:
> - self.server.serve_forever()
> - finally:
> - self._cleanup()
> -
> -class unixforkingservice(unixservice):
> - def __init__(self, ui, repo, opts, handler=None):
> - super(unixforkingservice, self).__init__(ui, repo, opts)
> self._servicehandler = handler or unixservicehandler(ui)
> self._sock = None
> self._oldsigchldhandler = None
> _______________________________________________
> Mercurial-devel mailing list
> Mercurial-devel at mercurial-scm.org
> https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel
More information about the Mercurial-devel
mailing list