##// END OF EJS Templates
packaging: switched to nix 20.03 packages and latest pip2nix code...
packaging: switched to nix 20.03 packages and latest pip2nix code - dependencies changed: atomicwrites==1.4.0 ipython==5.10.0 pytest==4.6.9 py==1.8.1 pytest-cov==2.8.1 pytest-sugar==0.9.3 pytest-runner==5.2.0

File last commit:

r248:55f1a734 default
r970:50f14aba python3
Show More
echo_app.py
54 lines | 1.5 KiB | text/x-python | PythonLexer
"""
Implementation of :class:`EchoApp`.
This WSGI application will just echo back the data which it recieves.
"""
import logging
log = logging.getLogger(__name__)
class EchoApp(object):
def __init__(self, repo_path, repo_name, config):
self._repo_path = repo_path
log.info("EchoApp initialized for %s", repo_path)
def __call__(self, environ, start_response):
log.debug("EchoApp called for %s", self._repo_path)
log.debug("Content-Length: %s", environ.get('CONTENT_LENGTH'))
environ['wsgi.input'].read()
status = '200 OK'
headers = [('Content-Type', 'text/plain')]
start_response(status, headers)
return ["ECHO"]
class EchoAppStream(object):
def __init__(self, repo_path, repo_name, config):
self._repo_path = repo_path
log.info("EchoApp initialized for %s", repo_path)
def __call__(self, environ, start_response):
log.debug("EchoApp called for %s", self._repo_path)
log.debug("Content-Length: %s", environ.get('CONTENT_LENGTH'))
environ['wsgi.input'].read()
status = '200 OK'
headers = [('Content-Type', 'text/plain')]
start_response(status, headers)
def generator():
for _ in xrange(1000000):
yield "ECHO"
return generator()
def create_app():
"""
Allows to run this app directly in a WSGI server.
"""
stub_config = {}
return EchoApp('stub_path', 'stub_name', stub_config)