Package org.apache.johnzon.core
Class Types
- java.lang.Object
-
- org.apache.johnzon.core.Types
-
public class Types extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
Types.ParameterizedTypeImpl
-
Constructor Summary
Constructors Constructor Description Types()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Class<?>
asClass(java.lang.reflect.Type type)
java.lang.reflect.ParameterizedType
findParameterizedType(java.lang.Class<?> klass, java.lang.Class<?> parameterizedClass)
This method helps reconstructing the resulting ParameterizedType for a specific generic type across its hierarchy.java.lang.Class<?>
findParamType(java.lang.reflect.ParameterizedType type, java.lang.Class<?> expectedWrapper)
private java.lang.reflect.Type[]
resolveArgumentTypes(java.lang.Class<?> type, java.lang.Class<?> parameterizedClass)
private java.lang.reflect.Type[]
resolveArgumentTypes(java.lang.reflect.ParameterizedType type, java.lang.Class<?> parameterizedClass)
private java.lang.reflect.Type[]
resolveArgumentTypes(java.lang.reflect.Type type, java.lang.Class<?> parameterizedClass)
-
-
-
Method Detail
-
findParameterizedType
public java.lang.reflect.ParameterizedType findParameterizedType(java.lang.Class<?> klass, java.lang.Class<?> parameterizedClass)
This method helps reconstructing the resulting ParameterizedType for a specific generic type across its hierarchy. Example: Let's create some interface Converter[X, Y] and try to determine the actual type arguments for that interface from classes/interfaces which inherit from it (directly or indirectly).- Converter[X, Y] will yield Converter[X, Y]
- StringConverter[Z] extends Converter[Z, String] will yield Converter[Z, String]
- AbstractStringConverter[A] implements StringConverter[A] will yield Converter[A, String]
- UUIDStringConverter extends AbstractStringConverter[UUID] will yield Converter[UUID, String]
-
findParamType
public java.lang.Class<?> findParamType(java.lang.reflect.ParameterizedType type, java.lang.Class<?> expectedWrapper)
-
asClass
public java.lang.Class<?> asClass(java.lang.reflect.Type type)
-
resolveArgumentTypes
private java.lang.reflect.Type[] resolveArgumentTypes(java.lang.reflect.Type type, java.lang.Class<?> parameterizedClass)
-
resolveArgumentTypes
private java.lang.reflect.Type[] resolveArgumentTypes(java.lang.Class<?> type, java.lang.Class<?> parameterizedClass)
-
resolveArgumentTypes
private java.lang.reflect.Type[] resolveArgumentTypes(java.lang.reflect.ParameterizedType type, java.lang.Class<?> parameterizedClass)
-
-