Manchmal ist das API von Eclipse verblüffend einfach: Das IDocument
-Interface hat eine get()
-Methode, das den Inhalt eines Dokuments schlicht als String zurückgibt.
Ich hätte jetzt erwartet, dass da ein Objekt vom Typ IDocumentReader
kommt. Um den zu benutzen, bräuchte man dann einen IDocumentReaderControllerAdapter
, um den man den das zu dem jeweiligen IDocument
gehörige IDocumentReaderControllerAdaptable
-Objekt bittet, das man kriegt, wenn man das ResourcesPlugin
um die DocumentUtilFactory
bittet und sich von der einen geeigneten IDocumentReaderControllerAdaptableManager
zusammenbauen lässt. Hierzu müsste man lediglich in einer Verzweigung testen, ob der IDocumentReader
vom Anfang zusätzlich das Interface IFileDocumentReader
implementiert oder nicht doch eher IBinaryResourceDocumentReader
, im Weder-noch-Fall mit einer Exception aufgeben und ansonsten halt in den jeweiligen Typ casten, den man dann braucht, um den von der DocumentUtilFactory
benötigten IDocumentWrapper
zu konstruieren.