Class GenericType<T>

  extended by org.jboss.resteasy.util.GenericType<T>

public class GenericType<T>
extends java.lang.Object

This class is a trick used to extract GenericType information at runtime. Java does not allow you get generic type information easily, so this class does the trick. For example:

 Type genericType = (new GenericType>() {}).getGenericType();

The above code will get you the genericType for List

$Revision: 1 $
Bill Burke

Constructor Summary
protected GenericType()
          Constructs a new generic entity.
Method Summary
 java.lang.reflect.Type getGenericType()
          Gets underlying Type instance.
 java.lang.Class<T> getType()
          Gets the raw type of the enclosed entity.
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Detail


protected GenericType()
Constructs a new generic entity. Derives represented class from type parameter. Note that this constructor is protected, users should create a (usually anonymous) subclass as shown above.

entity - the entity instance, must not be null
java.lang.IllegalArgumentException - if entity is null
Method Detail


public final java.lang.Class<T> getType()
Gets the raw type of the enclosed entity. Note that this is the raw type of the instance, not the raw type of the type parameter. I.e. in the example in the introduction, the raw type is ArrayList not List.

the raw type


public final java.lang.reflect.Type getGenericType()
Gets underlying Type instance. Note that this is derived from the type parameter, not the enclosed instance. I.e. in the example in the introduction, the type is List<String> not ArrayList<String>.

the type

Copyright © 2009. All Rights Reserved.