Class TypeToken<T>

  • Type Parameters:
    T - The type represented by this TypeToken.

    public abstract class TypeToken<T>
    extends java.lang.Object
    Wrapper around Type. You can use this to create instances of Type for a type known at compile time. For example, to get the Type that represents List<String>: Type listOfString = new TypeToken<List<String>>(){}.getType();
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.lang.reflect.AnnotatedType canonical  
      private java.lang.reflect.AnnotatedType type  
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected TypeToken()
      Constructs a type token.
      private TypeToken​(java.lang.reflect.AnnotatedType type)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean equals​(java.lang.Object obj)  
      private java.lang.reflect.AnnotatedType extractType()  
      static <T> TypeToken<T> get​(java.lang.Class<T> type)
      Gets type token for the given Class instance.
      static TypeToken<?> get​(java.lang.reflect.Type type)
      Gets type token for the given Type instance.
      java.lang.reflect.AnnotatedType getAnnotatedType()  
      java.lang.reflect.AnnotatedType getCanonicalType()  
      java.lang.reflect.Type getType()  
      int hashCode()  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • type

        private final java.lang.reflect.AnnotatedType type
      • canonical

        private volatile java.lang.reflect.AnnotatedType canonical
    • Constructor Detail

      • TypeToken

        protected TypeToken()
        Constructs a type token.
      • TypeToken

        private TypeToken​(java.lang.reflect.AnnotatedType type)
    • Method Detail

      • get

        public static <T> TypeToken<T> get​(java.lang.Class<T> type)
        Gets type token for the given Class instance.
        Type Parameters:
        T - The generic type captured by the token
        Parameters:
        type - The class from which the token is created
        Returns:
        TypeToken corresponding to the provided class
      • get

        public static TypeToken<?> get​(java.lang.reflect.Type type)
        Gets type token for the given Type instance.
        Parameters:
        type - The type from which the token is created
        Returns:
        TypeToken corresponding to the provided type
      • getType

        public java.lang.reflect.Type getType()
      • getAnnotatedType

        public java.lang.reflect.AnnotatedType getAnnotatedType()
      • getCanonicalType

        public java.lang.reflect.AnnotatedType getCanonicalType()
      • extractType

        private java.lang.reflect.AnnotatedType extractType()
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object