__init__.py 643 Bytes
from threading import Thread
from pyramid.config import Configurator
from .iso8583 import (
    read_conf,
    main_loop as iso8583_main_loop,
    )


iso8583_threads = []


def start_iso8583(conf_file):
    if not read_conf(conf_file):
        return
    thread = Thread(target=iso8583_main_loop, args=(conf_file,))
    thread.daemon = True
    iso8583_threads.append(thread)
    thread.start()


def main(global_config, **settings):
    """ This function returns a Pyramid WSGI application.
    """
    config = Configurator(settings=settings)
    config.scan()
    start_iso8583(global_config['__file__'])
    return config.make_wsgi_app()