Class TypeBase
java.lang.Object
com.fasterxml.jackson.core.type.ResolvedType
com.fasterxml.jackson.databind.JavaType
com.fasterxml.jackson.databind.type.TypeBase
- All Implemented Interfaces:
JsonSerializable
,Serializable
,Type
- Direct Known Subclasses:
ArrayType
,CollectionLikeType
,MapLikeType
,PlaceholderForType
,ResolvedRecursiveType
,SimpleType
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.fasterxml.jackson.databind.JsonSerializable
JsonSerializable.Base
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final TypeBindings
Bindings in effect for this type instance; possibly empty.protected final JavaType
protected final JavaType[]
Fields inherited from class com.fasterxml.jackson.databind.JavaType
_asStatic, _class, _hash, _typeHandler, _valueHandler
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
Copy-constructor used when refining/upgrading type instances.protected
TypeBase
(Class<?> raw, TypeBindings bindings, JavaType superClass, JavaType[] superInts, int hash, Object valueHandler, Object typeHandler, boolean asStatic) Main constructor to use by extending classes. -
Method Summary
Modifier and TypeMethodDescriptionprotected static JavaType
_bogusSuperClass
(Class<?> cls) Internal helper method used to figure out nominal super-class for deprecated factory methods / constructors, where we are not given properly resolved supertype hierarchy.protected static StringBuilder
_classSignature
(Class<?> cls, StringBuilder sb, boolean trailingSemicolon) protected boolean
_hasNTypeParameters
(int count) protected String
containedType
(int index) int
containedTypeName
(int index) Deprecated.final JavaType
findSuperType
(Class<?> rawTarget) Method that may be called to find representation of given type within type hierarchy of this type: either this type (if this type has given erased type), one of its supertypes that has the erased types, or null if target is neither this type or any of its supertypes.JavaType[]
findTypeParameters
(Class<?> expType) Method that may be used to find paramaterization this type has for given type-erased generic target type.abstract StringBuilder
Method for accessing signature without generic type information, in form compatible with all versions of JVM, and specifically used for type descriptions when generating byte code.abstract StringBuilder
Accessor for finding fully resolved interfaces this type implements, if any; empty array if none.Accessor for finding fully resolved parent class of this type, if it has one; null if not.void
serialize
(com.fasterxml.jackson.core.JsonGenerator gen, SerializerProvider provider) Serialization method called when no additional type information is to be included in serialization.void
serializeWithType
(com.fasterxml.jackson.core.JsonGenerator g, SerializerProvider provider, TypeSerializer typeSer) Serialization method called when additional type information is expected to be included in serialization, for deserialization to use.Methods inherited from class com.fasterxml.jackson.databind.JavaType
_narrow, containedTypeOrUnknown, equals, forcedNarrowBy, getContentType, getContentTypeHandler, getContentValueHandler, getErasedSignature, getGenericSignature, getKeyType, getParameterSource, getRawClass, getReferencedType, getTypeHandler, getValueHandler, hasContentType, hasGenericTypes, hasHandlers, hashCode, hasRawClass, hasValueHandler, isAbstract, isArrayType, isCollectionLikeType, isConcrete, isContainerType, isEnumImplType, isEnumType, isFinal, isInterface, isIterationType, isJavaLangObject, isMapLikeType, isPrimitive, isRecordType, isThrowable, isTypeOrSubTypeOf, isTypeOrSuperTypeOf, refine, toString, useStaticType, withContentType, withContentTypeHandler, withContentValueHandler, withHandlersFrom, withStaticTyping, withTypeHandler, withValueHandler
Methods inherited from class com.fasterxml.jackson.core.type.ResolvedType
isReferenceType
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.reflect.Type
getTypeName
-
Field Details
-
_superClass
-
_superInterfaces
-
_bindings
Bindings in effect for this type instance; possibly empty. Needed when resolving types declared in members of this type (if any).- Since:
- 2.7
-
-
Constructor Details
-
TypeBase
protected TypeBase(Class<?> raw, TypeBindings bindings, JavaType superClass, JavaType[] superInts, int hash, Object valueHandler, Object typeHandler, boolean asStatic) Main constructor to use by extending classes. -
TypeBase
Copy-constructor used when refining/upgrading type instances.- Since:
- 2.7
-
-
Method Details
-
toCanonical
- Specified by:
toCanonical
in classcom.fasterxml.jackson.core.type.ResolvedType
-
buildCanonicalName
-
getGenericSignature
- Specified by:
getGenericSignature
in classJavaType
- Parameters:
sb
- StringBuilder to append signature to- Returns:
- StringBuilder that was passed in; returned to allow call chaining
-
getErasedSignature
Description copied from class:JavaType
Method for accessing signature without generic type information, in form compatible with all versions of JVM, and specifically used for type descriptions when generating byte code.- Specified by:
getErasedSignature
in classJavaType
- Parameters:
sb
- StringBuilder to append signature to- Returns:
- StringBuilder that was passed in; returned to allow call chaining
-
getBindings
- Specified by:
getBindings
in classJavaType
-
containedTypeCount
public int containedTypeCount()- Specified by:
containedTypeCount
in classJavaType
-
containedType
- Specified by:
containedType
in classJavaType
-
containedTypeName
Deprecated.- Specified by:
containedTypeName
in classJavaType
-
getSuperClass
Description copied from class:JavaType
Accessor for finding fully resolved parent class of this type, if it has one; null if not.- Specified by:
getSuperClass
in classJavaType
-
getInterfaces
Description copied from class:JavaType
Accessor for finding fully resolved interfaces this type implements, if any; empty array if none.- Specified by:
getInterfaces
in classJavaType
-
findSuperType
Description copied from class:JavaType
Method that may be called to find representation of given type within type hierarchy of this type: either this type (if this type has given erased type), one of its supertypes that has the erased types, or null if target is neither this type or any of its supertypes.- Specified by:
findSuperType
in classJavaType
-
findTypeParameters
Description copied from class:JavaType
Method that may be used to find paramaterization this type has for given type-erased generic target type.- Specified by:
findTypeParameters
in classJavaType
-
serializeWithType
public void serializeWithType(com.fasterxml.jackson.core.JsonGenerator g, SerializerProvider provider, TypeSerializer typeSer) throws IOException Description copied from interface:JsonSerializable
Serialization method called when additional type information is expected to be included in serialization, for deserialization to use.Usually implementation consists of a call to
TypeSerializer.writeTypePrefix(com.fasterxml.jackson.core.JsonGenerator, com.fasterxml.jackson.core.type.WritableTypeId)
followed by serialization of contents, followed by a call toTypeSerializer.writeTypeSuffix(com.fasterxml.jackson.core.JsonGenerator, com.fasterxml.jackson.core.type.WritableTypeId)
). Details of the type id argument to pass depend on shape of JSON Object used (Array, Object or scalar like String/Number/Boolean).Note that some types (most notably, "natural" types: String, Integer, Double and Boolean) never include type information.
- Specified by:
serializeWithType
in interfaceJsonSerializable
- Throws:
IOException
-
serialize
public void serialize(com.fasterxml.jackson.core.JsonGenerator gen, SerializerProvider provider) throws IOException Description copied from interface:JsonSerializable
Serialization method called when no additional type information is to be included in serialization.- Specified by:
serialize
in interfaceJsonSerializable
- Throws:
IOException
-
_classSignature
protected static StringBuilder _classSignature(Class<?> cls, StringBuilder sb, boolean trailingSemicolon) - Parameters:
trailingSemicolon
- Whether to add trailing semicolon for non-primitive (reference) types or not
-
_bogusSuperClass
Internal helper method used to figure out nominal super-class for deprecated factory methods / constructors, where we are not given properly resolved supertype hierarchy. Will basically give `JavaType` for `java.lang.Object` for classes other than `java.lafgn.Object`; null for others.- Since:
- 2.7
-
_hasNTypeParameters
protected boolean _hasNTypeParameters(int count)
-