public class IterationType extends SimpleType
SimpleType
for types that are allow iteration
over Collection(-like) types: this includes types like
Iterator
.
Iterated (content) type is accessible using getContentType()
.JsonSerializable.Base
Modifier and Type | Field and Description |
---|---|
protected JavaType |
_iteratedType |
_bindings, _superClass, _superInterfaces
_asStatic, _class, _hash, _typeHandler, _valueHandler
Modifier | Constructor and Description |
---|---|
protected |
IterationType(Class<?> cls,
TypeBindings bindings,
JavaType superClass,
JavaType[] superInts,
JavaType iteratedType,
Object valueHandler,
Object typeHandler,
boolean asStatic) |
protected |
IterationType(TypeBase base,
JavaType iteratedType)
Constructor used when upgrading into this type (via
upgradeFrom(com.fasterxml.jackson.databind.JavaType, com.fasterxml.jackson.databind.JavaType) ,
the usual way for IterationType s to come into existence. |
Modifier and Type | Method and Description |
---|---|
protected String |
buildCanonicalName() |
static IterationType |
construct(Class<?> cls,
TypeBindings bindings,
JavaType superClass,
JavaType[] superInts,
JavaType iteratedType) |
JavaType |
getContentType() |
StringBuilder |
getErasedSignature(StringBuilder sb)
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.
|
StringBuilder |
getGenericSignature(StringBuilder sb) |
boolean |
hasContentType()
Accessor that allows determining whether
JavaType.getContentType() should
return a non-null value (that is, there is a "content type") or not. |
boolean |
isIterationType()
Method that returns true if this instance is of type
IterationType . |
JavaType |
refine(Class<?> rawType,
TypeBindings bindings,
JavaType superClass,
JavaType[] superInterfaces)
Mutant factory method that will try to create and return a sub-type instance
for known parameterized types; for other types will return `null` to indicate
that no just refinement makes necessary sense, without trying to detect
special status through implemented interfaces.
|
static IterationType |
upgradeFrom(JavaType baseType,
JavaType iteratedType)
Factory method that can be used to "upgrade" a basic type into iteration
type; usually done via
TypeModifier |
JavaType |
withContentType(JavaType contentType)
Mutant factory method that may be called on structured types
that have a so-called content type (element of arrays, value type
of Maps, referenced type of referential types),
and will construct a new instance that is identical to
this instance, except that it has specified content type, instead of current
one.
|
IterationType |
withContentTypeHandler(Object h)
Internal method that should not be used by any code outside of
jackson-databind: only used internally by databind.
|
IterationType |
withContentValueHandler(Object h)
Internal method that should not be used by any code outside of
jackson-databind: only used internally by databind.
|
IterationType |
withStaticTyping()
Method that can be called to get a type instance that indicates
that values of the type should be handled using "static typing" for purposes
of serialization (as opposed to "dynamic" aka runtime typing):
meaning that no runtime information is needed for determining serializers to use.
|
IterationType |
withTypeHandler(Object h)
Internal method that should not be used by any code outside of
jackson-databind: only used internally by databind.
|
IterationType |
withValueHandler(Object h)
Internal method that should not be used by any code outside of
jackson-databind: only used internally by databind.
|
construct, constructUnsafe, equals, isContainerType, toString
_bogusSuperClass, _classSignature, _hasNTypeParameters, containedType, containedTypeCount, containedTypeName, findSuperType, findTypeParameters, getBindings, getInterfaces, getSuperClass, serialize, serializeWithType, toCanonical
_narrow, containedTypeOrUnknown, forcedNarrowBy, getContentTypeHandler, getContentValueHandler, getErasedSignature, getGenericSignature, getKeyType, getParameterSource, getRawClass, getReferencedType, getTypeHandler, getValueHandler, hasGenericTypes, hasHandlers, hashCode, hasRawClass, hasValueHandler, isAbstract, isArrayType, isCollectionLikeType, isConcrete, isEnumImplType, isEnumType, isFinal, isInterface, isJavaLangObject, isMapLikeType, isPrimitive, isRecordType, isThrowable, isTypeOrSubTypeOf, isTypeOrSuperTypeOf, useStaticType, withHandlersFrom
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
getTypeName
protected final JavaType _iteratedType
protected IterationType(Class<?> cls, TypeBindings bindings, JavaType superClass, JavaType[] superInts, JavaType iteratedType, Object valueHandler, Object typeHandler, boolean asStatic)
protected IterationType(TypeBase base, JavaType iteratedType)
upgradeFrom(com.fasterxml.jackson.databind.JavaType, com.fasterxml.jackson.databind.JavaType)
,
the usual way for IterationType
s to come into existence.
Sets up what is considered the "base" iteration typepublic static IterationType upgradeFrom(JavaType baseType, JavaType iteratedType)
TypeModifier
baseType
- Resolved non-iteration type (usually SimpleType
) that is being upgradediteratedType
- Iterated type; usually the first and only type parameter, but not necessarilypublic static IterationType construct(Class<?> cls, TypeBindings bindings, JavaType superClass, JavaType[] superInts, JavaType iteratedType)
public JavaType withContentType(JavaType contentType)
JavaType
this
is returned.
If type does not have a content type (which is the case with
SimpleType
), IllegalArgumentException
will be thrown.withContentType
in class SimpleType
public IterationType withTypeHandler(Object h)
JavaType
This mutant factory method will construct a new instance that is identical to this instance, except that it will have specified type handler assigned.
withTypeHandler
in class SimpleType
h
- Handler to pass to new instance createdpublic IterationType withContentTypeHandler(Object h)
JavaType
This mutant factory method will construct a new instance that is identical to this instance, except that it will have specified content type (element type for arrays, value type for Maps and so forth) handler assigned.
withContentTypeHandler
in class SimpleType
h
- Handler to pass to new instance createdpublic IterationType withValueHandler(Object h)
JavaType
This mutant factory method will construct a new instance that is identical to this instance, except that it will have specified value handler assigned.
withValueHandler
in class SimpleType
h
- Handler to pass to new instance createdpublic IterationType withContentValueHandler(Object h)
JavaType
Mutant factory method that will construct a new instance that is identical to this instance, except that it will have specified content value handler assigned.
withContentValueHandler
in class SimpleType
h
- Handler to pass to new instance createdpublic IterationType withStaticTyping()
JavaType
withStaticTyping
in class SimpleType
public JavaType refine(Class<?> rawType, TypeBindings bindings, JavaType superClass, JavaType[] superInterfaces)
JavaType
refine
in class SimpleType
protected String buildCanonicalName()
buildCanonicalName
in class SimpleType
public JavaType getContentType()
getContentType
in class JavaType
public boolean hasContentType()
JavaType
JavaType.getContentType()
should
return a non-null value (that is, there is a "content type") or not.
True if JavaType.isContainerType()
or ResolvedType.isReferenceType()
return true.hasContentType
in class SimpleType
public boolean isIterationType()
JavaType
IterationType
.isIterationType
in class JavaType
public StringBuilder getErasedSignature(StringBuilder sb)
JavaType
getErasedSignature
in class SimpleType
sb
- StringBuilder to append signature topublic StringBuilder getGenericSignature(StringBuilder sb)
getGenericSignature
in class SimpleType
sb
- StringBuilder to append signature toCopyright © 2008–2023 FasterXML. All rights reserved.