Class TypeLiteral<T>


  • public class TypeLiteral<T>
    extends java.lang.Object
    • Field Detail

      • typeLiteralCache

        private static volatile java.util.Map<java.lang.reflect.Type,​TypeLiteral> typeLiteralCache
      • type

        final java.lang.reflect.Type type
      • decoderCacheKey

        final java.lang.String decoderCacheKey
      • encoderCacheKey

        final java.lang.String encoderCacheKey
    • Constructor Detail

      • TypeLiteral

        protected TypeLiteral()
        Constructs a new type literal. Derives represented class from type parameter. Clients create an empty anonymous subclass. Doing so embeds the type parameter in the anonymous class's type hierarchy so we can reconstitute it at runtime despite erasure.
      • TypeLiteral

        public TypeLiteral​(java.lang.reflect.Type type,
                           java.lang.String decoderCacheKey,
                           java.lang.String encoderCacheKey)
    • Method Detail

      • generateDecoderCacheKey

        private static java.lang.String generateDecoderCacheKey​(java.lang.reflect.Type type)
      • generateEncoderCacheKey

        private static java.lang.String generateEncoderCacheKey​(java.lang.reflect.Type type)
      • generateCacheKey

        private static java.lang.String generateCacheKey​(java.lang.reflect.Type type,
                                                         java.lang.String prefix)
      • formatTypeWithoutSpecialCharacter

        private static java.lang.String formatTypeWithoutSpecialCharacter​(java.lang.reflect.Type type)
      • getSuperclassTypeParameter

        static java.lang.reflect.Type getSuperclassTypeParameter​(java.lang.Class<?> subclass)
      • create

        public static TypeLiteral create​(java.lang.reflect.Type valueType)
      • createNew

        private static TypeLiteral createNew​(java.lang.reflect.Type valueType)
      • getType

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

        public java.lang.String getDecoderCacheKey()
      • getDecoderCacheKey

        public java.lang.String getDecoderCacheKey​(java.lang.String configName)
      • getEncoderCacheKey

        public java.lang.String getEncoderCacheKey()
      • getEncoderCacheKey

        public java.lang.String getEncoderCacheKey​(java.lang.String configName)
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object