equal
deleted
inserted
replaced
8 |
8 |
9 import os, sys, errno, urllib, BaseHTTPServer, socket, SocketServer, traceback |
9 import os, sys, errno, urllib, BaseHTTPServer, socket, SocketServer, traceback |
10 from mercurial import ui, hg, util, templater |
10 from mercurial import ui, hg, util, templater |
11 from hgweb_mod import hgweb |
11 from hgweb_mod import hgweb |
12 from hgwebdir_mod import hgwebdir |
12 from hgwebdir_mod import hgwebdir |
13 from request import wsgiapplication |
|
14 from mercurial.i18n import gettext as _ |
13 from mercurial.i18n import gettext as _ |
15 |
14 |
16 def _splitURI(uri): |
15 def _splitURI(uri): |
17 """ Return path and query splited from uri |
16 """ Return path and query splited from uri |
18 |
17 |
119 self.close_connection = True |
118 self.close_connection = True |
120 self.saved_status = None |
119 self.saved_status = None |
121 self.saved_headers = [] |
120 self.saved_headers = [] |
122 self.sent_headers = False |
121 self.sent_headers = False |
123 self.length = None |
122 self.length = None |
124 req = self.server.reqmaker(env, self._start_response) |
123 self.server.application(env, self._start_response) |
125 for data in req: |
|
126 if data: |
|
127 self._write(data) |
|
128 |
124 |
129 def send_headers(self): |
125 def send_headers(self): |
130 if not self.saved_status: |
126 if not self.saved_status: |
131 raise AssertionError("Sending headers before start_response() called") |
127 raise AssertionError("Sending headers before start_response() called") |
132 saved_status = self.saved_status.split(None, 1) |
128 saved_status = self.saved_status.split(None, 1) |
248 hgwebobj = hgweb(hg.repository(repo.ui, repo.root)) |
244 hgwebobj = hgweb(hg.repository(repo.ui, repo.root)) |
249 else: |
245 else: |
250 raise hg.RepoError(_("There is no Mercurial repository here" |
246 raise hg.RepoError(_("There is no Mercurial repository here" |
251 " (.hg not found)")) |
247 " (.hg not found)")) |
252 return hgwebobj |
248 return hgwebobj |
253 self.reqmaker = wsgiapplication(make_handler) |
249 self.application = make_handler() |
254 |
250 |
255 addr = address |
251 addr = address |
256 if addr in ('', '::'): |
252 if addr in ('', '::'): |
257 addr = socket.gethostname() |
253 addr = socket.gethostname() |
258 |
254 |