diff --git a/code/database.py b/code/database.py index 9edf3ec..31112f1 100644 --- a/code/database.py +++ b/code/database.py @@ -1,26 +1,29 @@ from pymongo import MongoClient from dotenv import load_dotenv +from configparser import ConfigParser +from pathlib import Path import logging import os +# load default values +config = ConfigParser() +f_list = config.read(Path(__file__).parent / 'defaults.ini') +DB_IP_ADDRESS = config.get('database', 'db_ip_address') +DB_NAME = config.get('database', 'db_name') +DB_COLLECTION_NAME = config.get('database', 'db_collection_name') + + def connect( - ip_addr: str | None = None, - db_name: str | None = None, - collection_name: str | None = None + ip_addr: str = DB_IP_ADDRESS, + db_name: str = DB_NAME, + collection_name: str = DB_COLLECTION_NAME ): """ Connect to MongoDB database and return collection. """ - # ensure variables are set - if ip_addr is None: - ip_addr = os.getenv('DB_IP_ADDRESS') - if db_name is None: - db_name = os.getenv('DB_NAME') - if collection_name is None: - collection_name = os.getenv('DB_COLLECTION_NAME') # connect to database - client = MongoClient(ip_addr) + client: MongoClient = MongoClient(ip_addr) db = client[db_name] collection = db[collection_name] logging.debug('finished')