Refactor: Worker-Pool-Zugriff über öffentliche Getter statt private Modul-Globals

get_saxon_worker_pool() und get_fop_worker_pool() in transform.py hinzugefügt.
worker_pool.py greift nicht mehr direkt auf transform._saxon_worker_pool /
transform._fop_worker_pool zu, sondern verwendet die Getter/Setter konsistent.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-09 20:18:01 +01:00
parent cfbdb8b7fa
commit 87b2d9273f
2 changed files with 17 additions and 15 deletions
+7 -15
View File
@@ -10,7 +10,7 @@ import logging
from PySide6.QtWidgets import QMessageBox
from conf import app_settings, XsltVersion
from transform import TransformationJob, set_saxon_worker_pool
from transform import TransformationJob, get_saxon_worker_pool, set_saxon_worker_pool, get_fop_worker_pool, set_fop_worker_pool
from saxon_pool import SaxonWorkerPool
from saxon_pool_s9api import SaxonWorkerPoolS9Api
@@ -90,12 +90,10 @@ class WorkerPoolMixin:
def _shutdown_saxon_worker_pool(self):
"""Beendet den Saxon-Worker-Pool sauber."""
try:
# Importiere transform um Zugriff auf globalen Pool zu haben
import transform
if transform._saxon_worker_pool:
pool = get_saxon_worker_pool()
if pool:
logger.info("Beende Saxon-Worker-Pool...")
transform._saxon_worker_pool.shutdown()
pool.shutdown()
set_saxon_worker_pool(None)
logger.info("Saxon-Worker-Pool beendet")
@@ -136,7 +134,6 @@ class WorkerPoolMixin:
# Importiere FopWorkerPool
from fop_pool import FopWorkerPool
from transform import set_fop_worker_pool
# Erstelle Worker-Pool
num_workers = app_settings.max_workers
@@ -165,15 +162,10 @@ class WorkerPoolMixin:
def _shutdown_fop_worker_pool(self):
"""Beendet den FOP-Worker-Pool sauber."""
try:
# Importiere transform um Zugriff auf globalen Pool zu haben
import transform
if transform._fop_worker_pool:
pool = get_fop_worker_pool()
if pool:
logger.info("Beende FOP-Worker-Pool...")
transform._fop_worker_pool.shutdown()
# Importiere set_fop_worker_pool
from transform import set_fop_worker_pool
pool.shutdown()
set_fop_worker_pool(None)
logger.info("FOP-Worker-Pool beendet")