com.fasterxml.jackson.core.type
Class ResolvedType

java.lang.Object
  extended by com.fasterxml.jackson.core.type.ResolvedType

public abstract class ResolvedType
extends Object

Type abstraction that represents Java type that has been resolved (i.e. has all generic information, if any, resolved to concrete types). Note that this is an intermediate type, and all concrete instances MUST be of type JavaType from "databind" bundle -- this abstraction is only needed so that types can be passed through JsonParser.readValueAs(java.lang.Class) methods.

Since:
2.0

Constructor Summary
ResolvedType()
           
 
Method Summary
abstract  ResolvedType containedType(int index)
          Method for accessing definitions of contained ("child") types.
abstract  int containedTypeCount()
          Method for checking how many contained types this type has.
abstract  String containedTypeName(int index)
          Method for accessing name of type variable in indicated position.
abstract  ResolvedType getContentType()
          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)
abstract  ResolvedType getKeyType()
          Method for accessing key type for this type, assuming type has such a concept (only Map types do)
 Class<?> getParameterSource()
          Deprecated. Since 2.7: does not have meaning as parameters depend on type resolved.
abstract  Class<?> getRawClass()
          Accessor for type-erased Class of resolved type.
abstract  ResolvedType getReferencedType()
          Method for accessing type of value that instances of this type references, if any.
abstract  boolean hasGenericTypes()
          Method that can be used to find out if the type directly declares generic parameters (for its direct super-class and/or super-interfaces).
abstract  boolean hasRawClass(Class<?> clz)
           
abstract  boolean isAbstract()
           
abstract  boolean isArrayType()
           
abstract  boolean isCollectionLikeType()
           
abstract  boolean isConcrete()
           
abstract  boolean isContainerType()
           
abstract  boolean isEnumType()
           
abstract  boolean isFinal()
           
abstract  boolean isInterface()
           
abstract  boolean isMapLikeType()
           
abstract  boolean isPrimitive()
           
 boolean isReferenceType()
          Whether this type is a referential type, meaning that values are basically pointers to "real" values (or null) and not regular values themselves.
abstract  boolean isThrowable()
           
abstract  String toCanonical()
          Method that can be used to serialize type into form from which it can be fully deserialized from at a later point (using TypeFactory from mapper package).
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ResolvedType

public ResolvedType()
Method Detail

getRawClass

public abstract Class<?> getRawClass()
Accessor for type-erased Class of resolved type.


hasRawClass

public abstract boolean hasRawClass(Class<?> clz)

isAbstract

public abstract boolean isAbstract()

isConcrete

public abstract boolean isConcrete()

isThrowable

public abstract boolean isThrowable()

isArrayType

public abstract boolean isArrayType()

isEnumType

public abstract boolean isEnumType()

isInterface

public abstract boolean isInterface()

isPrimitive

public abstract boolean isPrimitive()

isFinal

public abstract boolean isFinal()

isContainerType

public abstract boolean isContainerType()

isCollectionLikeType

public abstract boolean isCollectionLikeType()

isReferenceType

public boolean isReferenceType()
Whether this type is a referential type, meaning that values are basically pointers to "real" values (or null) and not regular values themselves. Typical examples include things like AtomicReference, and various Optional types (in JDK8, Guava).

Since:
2.6

isMapLikeType

public abstract boolean isMapLikeType()

hasGenericTypes

public abstract boolean hasGenericTypes()
Method that can be used to find out if the type directly declares generic parameters (for its direct super-class and/or super-interfaces).


getParameterSource

@Deprecated
public Class<?> getParameterSource()
Deprecated. Since 2.7: does not have meaning as parameters depend on type resolved.

Accessor that can be used to find out type for which parameterization is applied: this is often NOT same as what getRawClass() returns, but rather one of it supertype.

For example: for type like HashMap, raw type is HashMap; but this method would return Map, because relevant type parameters that are resolved (and accessible using containedType(int) and getKeyType()) are parameter for Map (which may or may not be same as type parameters for subtype; in case of HashMap they are, but for further subtypes they may be different parameters or possibly none at all).

Since:
2.5

getKeyType

public abstract ResolvedType getKeyType()
Method for accessing key type for this type, assuming type has such a concept (only Map types do)


getContentType

public abstract ResolvedType getContentType()
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)


getReferencedType

public abstract ResolvedType getReferencedType()
Method for accessing type of value that instances of this type references, if any.

Returns:
Referenced type, if any; null if not.
Since:
2.6

containedTypeCount

public abstract int containedTypeCount()
Method for checking how many contained types this type has. Contained types are usually generic types, so that generic Maps have 2 contained types.


containedType

public abstract ResolvedType containedType(int index)
Method for accessing definitions of contained ("child") types.

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 abstract String containedTypeName(int index)
Method for accessing name of type variable in indicated position. If no name is bound, will use placeholders (derived from 0-based index); if no type variable or argument exists with given index, null is returned.

Parameters:
index - Index of contained type to return
Returns:
Contained type at index, or null if no such type exists (no exception thrown)

toCanonical

public abstract String toCanonical()
Method that can be used to serialize type into form from which it can be fully deserialized from at a later point (using TypeFactory from mapper package). For simple types this is same as calling Class.getName(), but for structured types it may additionally contain type information about contents.



Copyright © 2008-2016 FasterXML. All Rights Reserved.