public class OptionalHandlerFactory
extends java.lang.Object
implements java.io.Serializable
Note that 2.7 changed handling to slightly less dynamic, to avoid having to traverse class hierarchy, which turned to be a performance issue in certain cases. Since DOM classes are assumed to exist on all Java 1.6 environments (yes, even on Android/GAE), this part could be simplified by slightly less dynamic lookups.
Also with 2.7 we are supporting JDK 1.7/Java 7 type(s).
Modifier and Type | Field and Description |
---|---|
private static java.lang.Class<?> |
CLASS_DOM_DOCUMENT |
private static java.lang.Class<?> |
CLASS_DOM_NODE |
private static java.lang.Class<?> |
CLASS_JAVA7_PATH |
private static java.lang.String |
DESERIALIZER_FOR_DOM_DOCUMENT |
private static java.lang.String |
DESERIALIZER_FOR_DOM_NODE |
private static java.lang.String |
DESERIALIZER_FOR_PATH |
private static java.lang.String |
DESERIALIZERS_FOR_JAVAX_XML |
static OptionalHandlerFactory |
instance |
private static java.lang.String |
PACKAGE_PREFIX_JAVAX_XML |
private static java.lang.String |
SERIALIZER_FOR_DOM_NODE |
private static java.lang.String |
SERIALIZERS_FOR_JAVAX_XML |
private static long |
serialVersionUID |
Modifier | Constructor and Description |
---|---|
protected |
OptionalHandlerFactory() |
Modifier and Type | Method and Description |
---|---|
JsonDeserializer<?> |
findDeserializer(JavaType type,
DeserializationConfig config,
BeanDescription beanDesc) |
JsonSerializer<?> |
findSerializer(SerializationConfig config,
JavaType type,
BeanDescription beanDesc) |
private boolean |
hasSuperClassStartingWith(java.lang.Class<?> rawType,
java.lang.String prefix)
Since 2.7 we only need to check for class extension, as all implemented
types are classes, not interfaces.
|
private java.lang.Object |
instantiate(java.lang.String className) |
private static final long serialVersionUID
private static final java.lang.String PACKAGE_PREFIX_JAVAX_XML
private static final java.lang.String SERIALIZERS_FOR_JAVAX_XML
private static final java.lang.String DESERIALIZERS_FOR_JAVAX_XML
private static final java.lang.String SERIALIZER_FOR_DOM_NODE
private static final java.lang.String DESERIALIZER_FOR_DOM_DOCUMENT
private static final java.lang.String DESERIALIZER_FOR_DOM_NODE
private static final java.lang.String DESERIALIZER_FOR_PATH
private static final java.lang.Class<?> CLASS_DOM_NODE
private static final java.lang.Class<?> CLASS_DOM_DOCUMENT
private static final java.lang.Class<?> CLASS_JAVA7_PATH
public static final OptionalHandlerFactory instance
public JsonSerializer<?> findSerializer(SerializationConfig config, JavaType type, BeanDescription beanDesc)
public JsonDeserializer<?> findDeserializer(JavaType type, DeserializationConfig config, BeanDescription beanDesc) throws JsonMappingException
JsonMappingException
private java.lang.Object instantiate(java.lang.String className)
private boolean hasSuperClassStartingWith(java.lang.Class<?> rawType, java.lang.String prefix)