Ejemplo n.º 1
0
    def _get_pool(provider, filename, create_db=False):
        if filename == ':memory:': return MemPool()
        else:
            # When relative filename is specified, it is considered
            # not relative to cwd, but to user module where
            # Database instance is created

            # the list of frames:
            # 3 - user code: db = Database(...)
            # 2 - cut_exception decorator
            # 1 - pony.orm.Database.__init__()
            # 0 - pony.dbproviders.sqlite._get_pool()

            filename = absolutize_path(filename, frame_depth=4)
            return Pool(filename, create_db)
Ejemplo n.º 2
0
    def get_pool(provider, filename, create_db=False):
        if filename != ':memory:':
            # When relative filename is specified, it is considered
            # not relative to cwd, but to user module where
            # Database instance is created

            # the list of frames:
            # 5 - user code: db = Database(...)
            # 4 - cut_traceback decorator wrapper
            # 3 - cut_traceback decorator
            # 2 - pony.orm.Database.__init__()
            # 1 - pony.dbapiprovider.DBAPIProvider.__init__()
            # 0 - pony.dbproviders.sqlite.get_pool()
            filename = absolutize_path(filename, frame_depth=5)
        return SQLitePool(filename, create_db)
Ejemplo n.º 3
0
    def get_pool(provider, filename, create_db=False):
        if filename != ':memory:':
            # When relative filename is specified, it is considered
            # not relative to cwd, but to user module where
            # Database instance is created

            # the list of frames:
            # 6 - user code: db = Database(...)
            # 5 - cut_traceback decorator wrapper
            # 4 - cut_traceback decorator
            # 3 - pony.orm.Database.__init__() / .bind()
            # 2 - pony.orm.Database._bind()
            # 1 - pony.dbapiprovider.DBAPIProvider.__init__()
            # 0 - pony.dbproviders.sqlite.get_pool()
            filename = absolutize_path(filename, frame_depth=6)
        return SQLitePool(filename, create_db)
Ejemplo n.º 4
0
    def get_pool(provider, filename, create_db=False, **kwargs):
        if filename != ':memory:':
            # When relative filename is specified, it is considered
            # not relative to cwd, but to user module where
            # Database instance is created

            # the list of frames:
            # 7 - user code: db = Database(...)
            # 6 - cut_traceback decorator wrapper
            # 5 - cut_traceback decorator
            # 4 - pony.orm.Database.__init__() / .bind()
            # 3 - pony.orm.Database._bind()
            # 2 - pony.dbapiprovider.DBAPIProvider.__init__()
            # 1 - SQLiteProvider.__init__()
            # 0 - pony.dbproviders.sqlite.get_pool()
            if 'abs_filename' in kwargs:
                filename = kwargs['abs_filename']
            else:
                filename = absolutize_path(filename, frame_depth=cut_traceback_depth+5)
                provider.db._constructor_args[1]['abs_filename'] = filename

        return SQLitePool(filename, create_db, **kwargs)