Package org.codehaus.jackson.map.type
Class CollectionLikeType
- java.lang.Object
-
- org.codehaus.jackson.type.JavaType
-
- org.codehaus.jackson.map.type.TypeBase
-
- org.codehaus.jackson.map.type.CollectionLikeType
-
- All Implemented Interfaces:
JsonSerializable,JsonSerializableWithType
- Direct Known Subclasses:
CollectionType
public class CollectionLikeType extends TypeBase
Type that represents things that act similar toCollection; but may or may not be instances of that interface. This specifically allows framework to check for configuration and annotation settings used for Map types, and pass these to custom handlers that may be more familiar with actual type.- Since:
- 1.8
-
-
Field Summary
Fields Modifier and Type Field Description protected JavaType_elementTypeType of elements in collection-
Fields inherited from class org.codehaus.jackson.type.JavaType
_class, _hashCode, _typeHandler, _valueHandler
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedCollectionLikeType(java.lang.Class<?> collT, JavaType elemT)Deprecated.protectedCollectionLikeType(java.lang.Class<?> collT, JavaType elemT, java.lang.Object valueHandler, java.lang.Object typeHandler)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected JavaType_narrow(java.lang.Class<?> subclass)protected java.lang.StringbuildCanonicalName()static CollectionLikeTypeconstruct(java.lang.Class<?> rawType, JavaType elemT)JavaTypecontainedType(int index)Method for accessing definitions of contained ("child") types.intcontainedTypeCount()Method for checking how many contained types this type has.java.lang.StringcontainedTypeName(int index)Not sure if we should count on this, but type names for core interfaces use "E" for element typebooleanequals(java.lang.Object o)JavaTypegetContentType()Method for accessing content type of this type, if type has such a thing: simple types do not, structured types do (like arrays, Collections and Maps)java.lang.StringBuildergetErasedSignature(java.lang.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.java.lang.StringBuildergetGenericSignature(java.lang.StringBuilder sb)booleanisCollectionLikeType()booleanisContainerType()booleanisTrueCollectionType()Method that can be used for checking whether this type is a "real" Collection type; meaning whether it represents a parameterized subtype ofCollectionor just something that acts like one.JavaTypenarrowContentsBy(java.lang.Class<?> contentClass)java.lang.StringtoString()JavaTypewidenContentsBy(java.lang.Class<?> contentClass)CollectionLikeTypewithContentTypeHandler(java.lang.Object h)"Copy method" that will construct a new instance that is identical to this instance, except that its content type will have specified type handler assigned.CollectionLikeTypewithContentValueHandler(java.lang.Object h)CollectionLikeTypewithTypeHandler(java.lang.Object h)"Copy method" that will construct a new instance that is identical to this instance, except that it will have specified type handler assigned.CollectionLikeTypewithValueHandler(java.lang.Object h)-
Methods inherited from class org.codehaus.jackson.map.type.TypeBase
_classSignature, getTypeHandler, getValueHandler, serialize, serializeWithType, toCanonical
-
Methods inherited from class org.codehaus.jackson.type.JavaType
_assertSubclass, _widen, forcedNarrowBy, getErasedSignature, getGenericSignature, getKeyType, getRawClass, hasGenericTypes, hashCode, hasRawClass, isAbstract, isArrayType, isConcrete, isEnumType, isFinal, isInterface, isMapLikeType, isPrimitive, isThrowable, narrowBy, setValueHandler, widenBy
-
-
-
-
Field Detail
-
_elementType
protected final JavaType _elementType
Type of elements in collection
-
-
Method Detail
-
_narrow
protected JavaType _narrow(java.lang.Class<?> subclass)
-
narrowContentsBy
public JavaType narrowContentsBy(java.lang.Class<?> contentClass)
- Specified by:
narrowContentsByin classJavaType
-
widenContentsBy
public JavaType widenContentsBy(java.lang.Class<?> contentClass)
- Specified by:
widenContentsByin classJavaType
-
construct
public static CollectionLikeType construct(java.lang.Class<?> rawType, JavaType elemT)
-
withTypeHandler
public CollectionLikeType withTypeHandler(java.lang.Object h)
Description copied from class:JavaType"Copy method" that will construct a new instance that is identical to this instance, except that it will have specified type handler assigned.- Specified by:
withTypeHandlerin classJavaType- Returns:
- Newly created type instance
-
withContentTypeHandler
public CollectionLikeType withContentTypeHandler(java.lang.Object h)
Description copied from class:JavaType"Copy method" that will construct a new instance that is identical to this instance, except that its content type will have specified type handler assigned.- Specified by:
withContentTypeHandlerin classJavaType- Returns:
- Newly created type instance
-
withValueHandler
public CollectionLikeType withValueHandler(java.lang.Object h)
- Overrides:
withValueHandlerin classJavaType
-
withContentValueHandler
public CollectionLikeType withContentValueHandler(java.lang.Object h)
- Overrides:
withContentValueHandlerin classJavaType
-
isContainerType
public boolean isContainerType()
- Specified by:
isContainerTypein classJavaType- Returns:
- True if type represented is a container type; this includes array, Map and Collection types.
-
isCollectionLikeType
public boolean isCollectionLikeType()
- Overrides:
isCollectionLikeTypein classJavaType- Returns:
- True if type is either true
Collectiontype, or something similar (meaning it has at least one type parameter, which describes type of contents)
-
getContentType
public JavaType getContentType()
Description copied from class:JavaTypeMethod for accessing content type of this type, if type has such a thing: simple types do not, structured types do (like arrays, Collections and Maps)- Overrides:
getContentTypein classJavaType
-
containedTypeCount
public int containedTypeCount()
Description copied from class:JavaTypeMethod for checking how many contained types this type has. Contained types are usually generic types, so that generic Maps have 2 contained types.- Overrides:
containedTypeCountin classJavaType
-
containedType
public JavaType containedType(int index)
Description copied from class:JavaTypeMethod for accessing definitions of contained ("child") types.- Overrides:
containedTypein classJavaType- Parameters:
index- Index of contained type to return- Returns:
- Contained type at index, or null if no such type exists (no exception thrown)
-
containedTypeName
public java.lang.String containedTypeName(int index)
Not sure if we should count on this, but type names for core interfaces use "E" for element type- Overrides:
containedTypeNamein classJavaType- Parameters:
index- Index of contained type to return- Returns:
- Contained type at index, or null if no such type exists (no exception thrown)
-
getErasedSignature
public java.lang.StringBuilder getErasedSignature(java.lang.StringBuilder sb)
Description copied from class:JavaTypeMethod 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:
getErasedSignaturein classTypeBase- Parameters:
sb- StringBuilder to append signature to- Returns:
- StringBuilder that was passed in; returned to allow call chaining
-
getGenericSignature
public java.lang.StringBuilder getGenericSignature(java.lang.StringBuilder sb)
- Specified by:
getGenericSignaturein classTypeBase- Parameters:
sb- StringBuilder to append signature to- Returns:
- StringBuilder that was passed in; returned to allow call chaining
-
buildCanonicalName
protected java.lang.String buildCanonicalName()
- Specified by:
buildCanonicalNamein classTypeBase
-
isTrueCollectionType
public boolean isTrueCollectionType()
Method that can be used for checking whether this type is a "real" Collection type; meaning whether it represents a parameterized subtype ofCollectionor just something that acts like one.- Since:
- 1.8
-
-