##// END OF EJS Templates
deps: bumped to latest versions
deps: bumped to latest versions

File last commit:

r1048:742e21ae python3
r1083:c93897de python3
Show More
remote_wsgi.py
45 lines | 1.1 KiB | text/x-python | PythonLexer
initial commit
r0 """
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
python3: code change for py3 support...
r1048 config.pop(b'git_update_server_info')