Files
new_dbsync/settings/config.py
T
2025-05-20 12:02:07 -04:00

64 lines
3.7 KiB
Python

__author__ = 'Wendell Jones'
import configparser
import os
import time
class Config(object):
global ROOTDIR
def __init__(self, ROOTDIR):
self.config_options = {}
self.configurer = configparser.ConfigParser()
self.read_settings(ROOTDIR)
def read_settings(self, ROOTDIR):
if os.name == 'nt':
self.configurer.read(ROOTDIR + '\\settings\\tvsync_settings.cfg')
else:
self.configurer.read(ROOTDIR + '/settings/tvsync_settings.cfg')
print(f"Reading configuration file from {ROOTDIR}/settings")
self.set_data()
self.get_data()
def set_data(self):
self.config_options['loglevel'] = self.configurer.get('global', 'loglevel')
self.config_options['hostname'] = self.configurer.get('dbsettings', 'hostname')
self.config_options['mghostname'] = self.configurer.get('dbsettings', 'mghostname')
self.config_options['dbname'] = self.configurer.get('dbsettings', 'dbname')
self.config_options['mgdbname'] = self.configurer.get('dbsettings', 'mgdbname')
self.config_options['mysqlusername'] = self.configurer.get('dbsettings', 'mysqlusername')
self.config_options['pgsqlusername'] = self.configurer.get('dbsettings', 'pgsqlusername')
self.config_options['mssqlusername'] = self.configurer.get('dbsettings', 'mssqlusername')
self.config_options['mysqlpassword'] = self.configurer.get('dbsettings', 'mysqlpassword')
self.config_options['pgsqlpassword'] = self.configurer.get('dbsettings', 'pgsqlpassword')
self.config_options['mssqlpassword'] = self.configurer.get('dbsettings', 'mssqlpassword')
self.config_options['pgsqlport'] = self.configurer.get('dbsettings', 'pgsqlport')
self.config_options['mysqlport'] = self.configurer.get('dbsettings', 'mysqlport')
self.config_options['mssqlport'] = self.configurer.get('dbsettings', 'mssqlport')
self.config_options['mgport'] = self.configurer.get('dbsettings', 'mgport')
self.config_options['updatetype'] = self.configurer.get('updatetype', 'type')
self.config_options['apitype'] = self.configurer.get('api', 'type')
self.config_options['updateschema'] = self.configurer.get('database', 'updateschema')
self.config_options['dbtype'] = self.configurer.get('database', 'dbtype')
self.config_options['initdb'] = self.configurer.get('database', 'initialize')
self.config_options['initload'] = self.configurer.get('database', 'initload')
self.config_options['skipcache'] = self.configurer.get('updatetype', 'cacheskip')
self.config_options['refreshcache'] = self.configurer.get('updatetype', 'refreshcache')
self.config_options['full'] = self.configurer.get('updatetype', 'full')
self.config_options['monthly'] = self.configurer.get('updatetype', 'monthly')
self.config_options['weekly'] = self.configurer.get('updatetype', 'weekly')
self.config_options['daily'] = self.configurer.get('updatetype', 'daily')
self.config_options['12h'] = self.configurer.get('updatetype', '12h')
self.config_options['6h'] = self.configurer.get('updatetype', '6h')
self.config_options['custom'] = self.configurer.get('updatetype', 'custom')
self.config_options['serieslist'] = list()
self.config_options['timedifference'] = self.configurer.get('updatetype', self.config_options['updatetype'])
self.config_options['current_timestamp'] = time.time()
if self.config_options['timedifference'].lower() == 'full':
self.config_options['timedifference'] = int(self.config_options['current_timestamp'])
def get_data(self):
return self.config_options
def __del__(self):
pass