Files
neft_outward_job/oracle_connector.py
2026-05-05 23:18:54 +05:30

38 lines
1.0 KiB
Python

import oracledb
from logging_config import get_logger
logger = get_logger(__name__)
class OracleConnector:
def __init__(self, config):
self.config = config
self.pool = None
def initialize_pool(self):
try:
self.pool = oracledb.create_pool(
user=self.config.db_user,
password=self.config.db_password,
dsn=self.config.db_dsn,
min=1,
max=5,
increment=1
)
logger.info("Oracle connection pool initialized")
except Exception:
logger.error("Failed to initialize Oracle pool", exc_info=True)
raise
def get_connection(self):
if not self.pool:
self.initialize_pool()
return self.pool.acquire()
def close(self):
if self.pool:
try:
self.pool.close()
logger.info("Oracle pool closed")
except Exception:
logger.error("Error closing pool", exc_info=True)