Ist-Analyse: Wir benutzen Datenzugriffsklassen welche auf eine
DB-Connection und eine dazugehörige Transaction zeigen. Nachteil: Alle Klassen nutzen die selbe Transaktion. Das wirkt sich negativ aus, wenn beispielsweise über
COM auf das Programm zugegriffen wird, da keine getrennte Transactionsteuerung möglich ist.
Ziel: Die Datenzugriffsklassen sollen aus einem Transactions-Pool eine freie Transaction zugewiesen bekommen, sodass eine getrennte Transaction-Steuerung für unterschiedliche Prozesse möglich wird.
Eine Möglichkeit wäre das Zuweisen einer Transactionreferenz beim Create einer Klasse. Die oberste Klasse bekommt über einen Manager beim Create eine freie Transaction zugewiesen. Jede weitere durch diese Klasse erzeugte Datenzugriffsklasse bekommt diese Referenz weitergegeben.
Problem: Es wäre ein kaum zu bewältigender Aufwand, das Create umzustellen. Es müsste der Constructor jeder Klasse angepasst werden, sowie jeder Aufruf des Constructors geändert werden. Gibt es eine andere Möglichkeit, dieses Problem zu lösen?
Vielen Dank im Voraus
René