##// END OF EJS Templates
git: make sure we don't break streaming in case of empty pull messages....
git: make sure we don't break streaming in case of empty pull messages. This allows much efficient streaming of data. Most cases don't have post message and we shouldn't extract date from iterator in such cases.

File last commit:

r0:0fb8cb8f default
r277:90be8c49 stable
Show More
remote_wsgi.py
45 lines | 1.1 KiB | text/x-python | PythonLexer
"""
Provides the same API as :mod:`remote_wsgi`.
Uses the `EchoApp` instead of real implementations.
"""
import logging
from .echo_app import EchoApp
from vcsserver import wsgi_app_caller
log = logging.getLogger(__name__)
class GitRemoteWsgi(object):
def handle(self, environ, input_data, *args, **kwargs):
app = wsgi_app_caller.WSGIAppCaller(
create_echo_wsgi_app(*args, **kwargs))
return app.handle(environ, input_data)
class HgRemoteWsgi(object):
def handle(self, environ, input_data, *args, **kwargs):
app = wsgi_app_caller.WSGIAppCaller(
create_echo_wsgi_app(*args, **kwargs))
return app.handle(environ, input_data)
def create_echo_wsgi_app(repo_path, repo_name, config):
log.debug("Creating EchoApp WSGI application")
_assert_valid_config(config)
# Remaining items are forwarded to have the extras available
return EchoApp(repo_path, repo_name, config=config)
def _assert_valid_config(config):
config = config.copy()
# This is what git needs from config at this stage
config.pop('git_update_server_info')