Ich versuche ein Job-Scheduling-System in GWT zu schreiben, das ein Array von Exceptions ( Class<? extends Exception>[] exceptions
) enthält, das durch Wiederholen des Jobs aufgelöst werden könnte. Wenn der Scheduler eine Ausnahme abfängt, muss ich feststellen, ob diese Ausnahme mit einer der Klassen im Array übereinstimmt. Also, ich möchte eine Funktion wie folgt haben:
Leider ist Class.isInstance(...)
in GWT nicht verfügbar.
Gibt es dafür eine gute Lösung? Meine derzeitige beste Schätzung ist ungefähr so:
%Vor% Leider unterstützt dieser Ansatz das Testen von Schnittstellen nicht, und ich habe keine Idee, wie das behoben werden kann, da auch Class.getInterfaces()
nicht verfügbar ist. Aber würde dieser Ansatz in allen anderen Fällen zumindest so funktionieren wie Java Class.isInstance
, ausgenommen Schnittstellen? Genauer gesagt, wenn ich mir GWTs Quelle für Class.java , enthält die getSuperclass()
-Methode eine Überprüfung von isClassMetadataEnabled()
, die möglicherweise falsch zurückgibt (aber ich weiß nicht, in welchen Fällen), da sie a enthält Kommentar sagen "Dieser Körper kann durch den Compiler ersetzt werden".
Oder gibt es einen besseren Weg, dies zu tun?
Tags und Links gwt java class instanceof