Example #1
0
class Server(Thread):
    def __init__(self, dev=False, port=9999):
        super(Server, self).__init__()
        self.host = 'localhost'
        self.port = port
        self.base_url = 'http://%s:%d' % (self.host, self.port)
        self.url = '%s/acquisition' % self.base_url
        self.dev = dev
        self._server = WSGIRefServer(host=self.host, port=self.port)

    def run(self):
        self.setup()
        self._server.run(app=default_app())

    def start(self):
        super(Server, self).start()
        # Wait for bottle to start
        while True:
            try:
                requests.get(self.base_url)
                break
            except requests.ConnectionError:
                time.sleep(0.1)

    def setup(self, adapter=None):
        server.setup(dev=self.dev, adapter=adapter)

    def stop(self):
        self._server.srv.shutdown()
        # Force the socket to close so we can reuse the same port
        self._server.srv.socket.close()
Example #2
0
 def __init__(self):
     super(Server, self).__init__()
     self.host = 'localhost'
     self.port = 9999
     self.base_url = 'http://%s:%d' % (self.host, self.port)
     self.url = '%s/acquisition' % self.base_url
     self._server = WSGIRefServer(host=self.host, port=self.port)
Example #3
0
 def __init__(self, dev=False, port=9999):
     super(Server, self).__init__()
     self.host = 'localhost'
     self.port = port
     self.base_url = 'http://%s:%d' % (self.host, self.port)
     self.url = '%s/acquisition' % self.base_url
     self.dev = dev
     self._server = WSGIRefServer(host=self.host, port=self.port)
Example #4
0
    def serve_forever(self):
        app = self.init_bottle_app()
        if self._ssl_config:
            server_adapter = SSLWSGIRefServerAdapter(
                host=self._bindaddr,
                port=self._port,
                ssl_version=self._ssl_config.ssl_version,
                ssl_cert_file=self._ssl_config.ssl_certfile,
                ssl_key_file=self._ssl_config.ssl_keyfile,
                ssl_ca_certs=self._ssl_config.ssl_ca_certs,
                ssl_ciphers=self._ssl_config.ssl_ciphers)
        else:
            server_adapter = WSGIRefServer(host='localhost', port=self._port)

        self._server_adapter = server_adapter
        run(app=app, server=server_adapter)
Example #5
0
 def __init__(self, host='127.0.0.1', port=8080, **options):
     WSGIRefServer.__init__(self, host=host, port=port, **options)
     self.srv = None
     CustomWSGIRefServer.instances.append(self)
Example #6
0
 def __init__(self, host='', port=8080, **options):
     options['server_class'] = FWSGISvr
     WSGIRefServer.__init__(self, host, port, **options)
Example #7
0
def _run():
    global SERVER
    print('Serving on http://localhost:8080 ...')
    SERVER = WSGIRefServer(host='', port=8080)
    bottle.run(server=SERVER, quiet=True)
Example #8
0
    root = os.path.dirname(__file__)
    if path == 'rs_require.js':
        root = os.path.join(root, '../')
    return static_file(path, root = root)

@route('/done', method = 'POST')
def done():
    print(request.json)
    stop()

@route('/err', method = 'POST')
def err():
    global EXIT_CODE
    print(request.json)
    EXIT_CODE = 1
    stop()
    
def stop():
    t = Thread(target=off)
    t.daemon = True
    t.start()

def off():
    server.srv.server_close() 
    server.srv.shutdown()

server = WSGIRefServer(port=8000, host='127.0.0.1')
run(server=server)
sys.exit(EXIT_CODE)

Example #9
0
    def __init__(self, host='127.0.0.1', port=8080, **options):
        WSGIRefServer.__init__(self, host=host, port=port, **options)
        self.quiet = options.get("quiet", False)

        self.__server = None
        self.__server_started = Event()