Hallo barf00s,
ich ergänze gerade mein Framework zur
Dependency Injection um die Möglichkeiten eines Plug-In-Frameworks eines Drittherstellers, das pro Modul eine Liste von Fabriken bereithält, die neben der Fabrikation selbst leider nur eine Referenz auf die (dynamisch nachgeladene) Klasse anbieten. Um den Abhängigkeitsgraphen bei der Injektion traversieren und rekursiv lösen zu können nutzt die Implementation eines Containers Typinformationen, da injizierte Abhängigkeiten auch auf Basis von Klassen oder anderen Typen formuliert werden- und eben nicht nur Interfaces.
Trotzdem beschreiben viele der Container Abhängigkeiten zu speziellen Interfaces (Services), die ihrerseits nun durch das Plug-In-Framework nachgeladen werden. Weil ich das Plug-In-Framework des Drittherstellers nicht verändern und schon gar nicht in den Registraturmachnismus dieser Plug-ins eingreifen möchte, bleibt zur Ermittlung des (ersten, es handelt sich um einen Service) unterstützen Interfacetyps aus meiner Sicht nur die Möglichkeit, sie aus der Klassenreferenz zu extrahieren.
Oder übersehe ich etwas?