Beispiel #1
0
 def open(self):
     self.db = apsw.Connection(
         self._db_path,
         flags=(
             apsw.SQLITE_OPEN_READWRITE |
             apsw.SQLITE_OPEN_CREATE |
             apsw.SQLITE_OPEN_URI
         )
     )
     def exec_factory(cursor, statement, bindings):
         tpl = namedtuple('row', (d[0] for d in cursor.getdescription()))
         cursor.setrowtrace(lambda cursor, row: tpl(*row))
         return True
     self.db.setexectrace(exec_factory)
     self.execute(self.PRAGMAS)
     self.execute(self.CREATE_TABLES_QUERY)
     register_canonical_functions(self.db)
     self.state_manager = Manager()
     self.blocked_streams = self.state_manager.dict()
     self.blocked_channels = self.state_manager.dict()
     self.filtered_streams = self.state_manager.dict()
     self.filtered_channels = self.state_manager.dict()
     self.update_blocked_and_filtered_claims()
     for algorithm in self.trending:
         algorithm.install(self.db)
Beispiel #2
0
 def open(self):
     self.db = sqlite3.connect(self._db_path,
                               isolation_level=None,
                               check_same_thread=False,
                               uri=True)
     self.db.row_factory = sqlite3.Row
     self.db.executescript(self.CREATE_TABLES_QUERY)
     register_canonical_functions(self.db)
     register_trending_functions(self.db)
Beispiel #3
0
    def open(self):
        self.db = apsw.Connection(
            self._db_path,
            flags=(apsw.SQLITE_OPEN_READWRITE | apsw.SQLITE_OPEN_CREATE
                   | apsw.SQLITE_OPEN_URI))

        def exec_factory(cursor, statement, bindings):
            tpl = namedtuple('row', (d[0] for d in cursor.getdescription()))
            cursor.setrowtrace(lambda cursor, row: tpl(*row))
            return True

        self.db.setexectrace(exec_factory)
        self.execute(self.CREATE_TABLES_QUERY)
        register_canonical_functions(self.db)
        register_trending_functions(self.db)
Beispiel #4
0
    def open(self):
        self.db = sqlite3.connect(self._db_path,
                                  isolation_level=None,
                                  check_same_thread=False,
                                  uri=True)

        def namedtuple_factory(cursor, row):
            Row = namedtuple('Row', (d[0] for d in cursor.description))
            return Row(*row)

        self.db.row_factory = namedtuple_factory
        self.db.executescript(self.PRAGMAS)
        self.db.executescript(self.CREATE_TABLES_QUERY)
        register_canonical_functions(self.db)
        self.blocked_streams = {}
        self.blocked_channels = {}
        self.filtered_streams = {}
        self.filtered_channels = {}
        self.update_blocked_and_filtered_claims()
        for algorithm in self.trending:
            algorithm.install(self.db)