Пример #1
0
class Server(object):
    def __init__(self, port, dbname, template_dir):
        self.db_engine = DBEngine(dbname)
        self.port = port

        if not os.path.exists(dbname):
            self.db_engine.create_db()

        init_db_args = {
            'db_engine': self.db_engine,
            'template_loader': Loader(template_dir)
        }

        application = Application([
            (r"/login", LoginHandler, init_db_args),
            (r"/logout", LogoutHandler),
            (r"/pdf", PdfHandler, init_db_args),
            (r"/pdf/(?P<pdf_id>\w+)", PdfDownloadHandler, init_db_args),
            (r"/page/(?P<pdf_id>\w+)", PageHandler, init_db_args),
            (r"/page/(?P<pdf_id>\w+)/(?P<page_num>\w+)", PageDownloadHandler, init_db_args),
            (r"/.*", DefaultHandler)
        ])
        self.http_server = HTTPServer(application)

    def run(self):
        self.http_server.listen(self.port)
        IOLoop.current().start()
Пример #2
0
import sys
import os
from db import DBEngine

if __name__ == "__main__":
    argv = sys.argv

    if len(argv) != 2:
        print("Usage: %s <path_to_db>" % argv[0])
        sys.exit(1)

    path_to_db = os.path.abspath(argv[1])
    engine = DBEngine(path_to_db)
    engine.create_db()