# konfigurierbare Objekte - Singelton und Factory Pattern



## beginner99 (5. Mai 2011)

Hallo zusammen,

ich habe mehrere interfaces, deren Implementierungen und und dessen Felder/Initialisierungswerte durch den Benutzer/Admin festgelegt werden können soll. Wie soll ich da vorgehen?

Die konfigurierten Parameter sind ja nicht überall in der Applikation verfügbar. Die sollten einmal geladen werden und dann sollte das Programm entsprechend laufen.

Man könnte den Ort der config datei fest vorgeben (oder via -D) und die Factory gibt dann entweder die bereits vorhandene Instanz zurück("Singelton-mässig") oder falls noch nicht gesetzt, liesst sie die Konfiguration ein und gibt dann das Objekt zurück.
Macht das Sinn? Oder gibt es für dieses Problem eine bessere Lösung?


----------



## fastjack (9. Mai 2011)

Du kannst das auch in Properties-Dateien speichern, die Du zu Programmbeginn liest. Factories usw. holen sich die Infos dann aus dem jeweiligen Properties-Objekt.


----------



## Wildcard (9. Mai 2011)

Dependency Injection bietet sich wohl an.


----------



## beginner99 (10. Mai 2011)

Habe jetzt folgendes gemacht:

1 properties file und 1 factory.

Die Implementationen sind voneinander abhängig oder anders gesagt Objekt B hat Interface Typ von Objekt A als Parameter im Konstruktor.
Also wenn ich B will, brauche ich auch A.
Und dann erstelle ich die Instanzen über Reflection.

Die Factory schaut an vordefinierten Stellen nach dem properties file sonst werden einfach default Werte genommen.


----------

