hub/persistence/base_repo.py

31 lines
646 B
Python

"""
Base repository class to establish db connection
SPDX - License - Identifier: LGPL - 3.0 - or -later
Copyright © 2022 Concordia CERC group
Project Coder Peter Yefi peteryefi@gmail.com
"""
from persistence.db_config import BaseConfiguration
from sqlalchemy import create_engine
from sqlalchemy.orm import Session
class BaseRepo:
def __init__(self, db_name, app_env='TEST'):
self.config = BaseConfiguration(db_name, app_env)
self.engine = create_engine(self.config.conn_string())
self.session = Session(self.engine)
def __del__(self):
"""
Close database sessions
:return:
"""
self.session.close()