So ermitteln Sie den Typ des Generikums, auf das es sich beziehtJava

Java-Forum
Anonymous
 So ermitteln Sie den Typ des Generikums, auf das es sich bezieht

Post by Anonymous »

Ich verwende CodeModel, um automatisch generierte JAXB-Klassen zu manipulieren.

Die Getter-Methode der JAXB-Klassen gibt etwas wie JAXBElement, JAXBElement usw. zurück. Ich möchte in den JAXB-Klassen eine Methode generieren, die OutputRoot, String usw. zurückgibt.
/>Was ich nicht herausfinden kann, wie ich den internen Typ bekomme (

Code: Select all

OutputRoot
usw.), damit ich es in der neuen Methode angeben kann.
Was ich bisher habe, ist

Code: Select all

@Override
public boolean run(Outline model, Options opt, ErrorHandler errorHandler) {
JCodeModel m = new JCodeModel();

for (ClassOutline o : model.getClasses()) {
for (Entry e : o.implClass.fields().entrySet()) {

JClass classOptional = model
.getCodeModel()
.ref(Optional.class)
.narrow( e.getValue()
.type().boxify() );

String methodName = "get" + e.getKey().substring(0, 1).toUpperCase() + e.getKey().substring(1);
JMethod method = o.implClass.method(PUBLIC, classOptional, methodName);
JBlock body = method.body();
}
}
}
Irgendwelche Hinweise bitte?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post