summaryrefslogtreecommitdiffstats
path: root/reporting/api/server.py
blob: 461e6d5ba0ca4c87c72590b278d9271a84c465b3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
##############################################################################
# Copyright (c) 2016 Huawei Technologies Co.,Ltd and others.
#
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Apache License, Version 2.0
# which accompanies this distribution, and is available at
# http://www.apache.org/licenses/LICENSE-2.0
##############################################################################
import tornado.ioloop
import tornado.web
from tornado.options import define
from tornado.options import options

from api.urls import mappings
from api.service.result import ResultCache

define("port", default=8000, help="run on the given port", type=int)


def main():
    tornado.options.parse_command_line()
    application = tornado.web.Application(mappings)
    application.listen(options.port)

    tornado.ioloop.PeriodicCallback(ResultCache.update, 1800000).start()

    ioloop = tornado.ioloop.IOLoop.current()
    ioloop.call_later(1000, ResultCache.update())
    ioloop.start()


if __name__ == "__main__":
    main()