verschiedene Konfigurationen innerhalb einer Anwednung ermöglichen
Wenn man beim initialisieren einen Namen für die Konfiguration mitgeben kann und man bei get Instance diesen Namen verwenden kannn um diese Konffiguration aus vielen zu wählen, dann können die Konfiguration mit verschiedenen Algorythmen und aus verschiednenen Dateien erzeugt werden. Für ein Abwärtskompatibilität bzw. kleine Anwendungsfälle muss es lediglich eine default Instanz als Fallback geben.
config = ConfigProvider(load_function = load_function, name = 'ldap_config')
würde einen Zusätzlichen Configurationsprovider für die ldap_config erzeugen, der mit
config = ConfigProvider.getInstance('ldap_config')
wieder abrufbar wäre. getInstance soll dann ebenfalls weiter ohne name angabe funktionieren.