##// END OF EJS Templates
commands: refactor 'serve', extract the http service class
Mads Kiilerich -
r19919:e48c7045 default
parent child Browse files
Show More
@@ -5183,13 +5183,20 b' def serve(ui, repo, **opts):'
5183 o = repo
5183 o = repo
5184
5184
5185 app = hgweb.hgweb(o, baseui=baseui)
5185 app = hgweb.hgweb(o, baseui=baseui)
5186
5186 service = httpservice(ui, app, opts)
5187 class service(object):
5187 cmdutil.service(opts, initfn=service.init, runfn=service.run)
5188
5189 class httpservice(object):
5190 def __init__(self, ui, app, opts):
5191 self.ui = ui
5192 self.app = app
5193 self.opts = opts
5194
5188 def init(self):
5195 def init(self):
5189 util.setsignalhandler()
5196 util.setsignalhandler()
5190 self.httpd = hgweb_server.create_server(ui, app)
5197 self.httpd = hgweb_server.create_server(self.ui, self.app)
5191
5198
5192 if opts['port'] and not ui.verbose:
5199 if self.opts['port'] and not self.ui.verbose:
5193 return
5200 return
5194
5201
5195 if self.httpd.prefix:
5202 if self.httpd.prefix:
@@ -5210,19 +5217,16 b' def serve(ui, repo, **opts):'
5210 fqaddr = self.httpd.fqaddr
5217 fqaddr = self.httpd.fqaddr
5211 if ':' in fqaddr:
5218 if ':' in fqaddr:
5212 fqaddr = '[%s]' % fqaddr
5219 fqaddr = '[%s]' % fqaddr
5213 if opts['port']:
5220 if self.opts['port']:
5214 write = ui.status
5221 write = self.ui.status
5215 else:
5222 else:
5216 write = ui.write
5223 write = self.ui.write
5217 write(_('listening at http://%s%s/%s (bound to %s:%d)\n') %
5224 write(_('listening at http://%s%s/%s (bound to %s:%d)\n') %
5218 (fqaddr, port, prefix, bindaddr, self.httpd.port))
5225 (fqaddr, port, prefix, bindaddr, self.httpd.port))
5219
5226
5220 def run(self):
5227 def run(self):
5221 self.httpd.serve_forever()
5228 self.httpd.serve_forever()
5222
5229
5223 service = service()
5224
5225 cmdutil.service(opts, initfn=service.init, runfn=service.run)
5226
5230
5227 @command('showconfig|debugconfig',
5231 @command('showconfig|debugconfig',
5228 [('u', 'untrusted', None, _('show untrusted configuration options'))],
5232 [('u', 'untrusted', None, _('show untrusted configuration options'))],
General Comments 0
You need to be logged in to leave comments. Login now