Code view:

A painting is a person's account of this edit as text, recorded independently of the node mapping - a rendering often has several equally defensible answers where the mapping has one. Deletions and insertions carry no position on the opposite side in a painting, so that panel draws no caret for them.

Before

…lines 1–1582 unchanged (1582 lines)
1583 // 05-Apt-2018, tatu: Since we get non-mapping exception due to various limitations,
1584 // map to better type here
1585 try {
1586 return b.buildTypeDeserializer(config, baseType, subtypes);
1587 } catch (IllegalArgumentException e0) {
1588 InvalidDefinitionException e = InvalidDefinitionException.from((JsonParser) null,
1589 e0.getMessage(), baseType);
1590 e.initCause(e0);
1591 throw e;
1592 }
1593 }
1594
1595 /**
…lines 1596–2178 unchanged (583 lines)

After

…lines 1–1582 unchanged (1582 lines)
1583 // 05-Apt-2018, tatu: Since we get non-mapping exception due to various limitations,
1584 // map to better type here
1585 try {
1586 return b.buildTypeDeserializer(config, baseType, subtypes);
1587 } catch (IllegalArgumentException e0) {
1588 InvalidDefinitionException e = InvalidDefinitionException.from((JsonParser) null,
1589 ClassUtil.exceptionMessage(e0), baseType);
1590 e.initCause(e0);
1591 throw e;
1592 }
1593 }
1594
1595 /**
…lines 1596–2178 unchanged (583 lines)

Before

program
package_declaration
package "package"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "deser"
; ";"
import_declaration
import "import"
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
asterisk
* "*"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "concurrent"
. "."
asterisk
* "*"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "concurrent"
. "."
identifier "atomic"
. "."
identifier "AtomicReference"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "annotation"
. "."
identifier "JacksonInject"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "annotation"
. "."
identifier "JsonCreator"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "annotation"
. "."
identifier "JsonIgnoreProperties"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "annotation"
. "."
identifier "JsonCreator"
. "."
identifier "Mode"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
identifier "JsonLocation"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
identifier "JsonParser"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
asterisk
* "*"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "cfg"
. "."
identifier "DeserializerFactoryConfig"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "cfg"
. "."
identifier "HandlerInstantiator"
; ";"
import_declaration (+22 nodes collapsed)
import_declaration (+22 nodes collapsed)
import_declaration (+22 nodes collapsed)
import_declaration (+22 nodes collapsed)
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "exc"
. "."
identifier "InvalidDefinitionException"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "ext"
. "."
identifier "OptionalHandlerFactory"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "introspect"
. "."
asterisk
* "*"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "jsontype"
. "."
identifier "NamedType"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "jsontype"
. "."
identifier "TypeDeserializer"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "jsontype"
. "."
identifier "TypeResolverBuilder"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "type"
. "."
asterisk
* "*"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "util"
. "."
asterisk
* "*"
; ";"
block_comment "/**\n * Abstract factory base class that can provide deserial"...
class_declaration
modifiers
annotation
@ "@"
identifier "SuppressWarnings"
annotation_argument_list
( "("
string_literal
" "\""
string_fragment "serial"
" "\""
) ")"
public "public"
abstract "abstract"
class "class"
identifier "BasicDeserializerFactory"
superclass
extends "extends"
type_identifier "DeserializerFactory"
super_interfaces
implements "implements"
type_list
scoped_type_identifier
scoped_type_identifier
type_identifier "java"
. "."
type_identifier "io"
. "."
type_identifier "Serializable"
class_body
{ "{"
field_declaration
modifiers
private "private"
final "final"
static "static"
generic_type
type_identifier "Class"
type_arguments
< "<"
wildcard
? "?"
> ">"
variable_declarator
identifier "CLASS_OBJECT"
= "="
class_literal
type_identifier "Object"
. "."
class "class"
; ";"
field_declaration
modifiers
private "private"
final "final"
static "static"
generic_type
type_identifier "Class"
type_arguments
< "<"
wildcard
? "?"
> ">"
variable_declarator
identifier "CLASS_STRING"
= "="
class_literal
type_identifier "String"
. "."
class "class"
; ";"
field_declaration
modifiers
private "private"
final "final"
static "static"
generic_type
type_identifier "Class"
type_arguments
< "<"
wildcard
? "?"
> ">"
variable_declarator
identifier "CLASS_CHAR_SEQUENCE"
= "="
class_literal
type_identifier "CharSequence"
. "."
class "class"
; ";"
field_declaration
modifiers
private "private"
final "final"
static "static"
generic_type
type_identifier "Class"
type_arguments
< "<"
wildcard
? "?"
> ">"
variable_declarator
identifier "CLASS_ITERABLE"
= "="
class_literal
type_identifier "Iterable"
. "."
class "class"
; ";"
field_declaration (+23 nodes collapsed)
block_comment "/**\n * We need a placeholder for creator properties that"...
field_declaration
modifiers
protected "protected"
final "final"
static "static"
type_identifier "PropertyName"
variable_declarator
identifier "UNWRAPPED_CREATOR_PARAM_NAME"
= "="
object_creation_expression
new "new"
type_identifier "PropertyName"
argument_list
( "("
string_literal
" "\""
string_fragment "@JsonUnwrapped"
" "\""
) ")"
; ";"
block_comment "/* We do some defaulting for abstract Map classes and\n *"...
field_declaration (+55 nodes collapsed)
static_initializer (+149 nodes collapsed)
block_comment "/* We do some defaulting for abstract Collection classes and"...
field_declaration (+55 nodes collapsed)
static_initializer (+163 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Configuration settings for this factory; immutabl"...
field_declaration
modifiers
protected "protected"
final "final"
type_identifier "DeserializerFactoryConfig"
variable_declarator
identifier "_factoryConfig"
; ";"
block_comment "/*\n /****************************************************"...
constructor_declaration
modifiers
protected "protected"
identifier "BasicDeserializerFactory"
formal_parameters
( "("
formal_parameter
type_identifier "DeserializerFactoryConfig"
identifier "config"
) ")"
constructor_body
{ "{"
expression_statement
assignment_expression
identifier "_factoryConfig"
= "="
identifier "config"
; ";"
} "}"
block_comment "/**\n * Method for getting current {@link DeserializerFac"...
method_declaration
modifiers
public "public"
type_identifier "DeserializerFactoryConfig"
identifier "getFactoryConfig"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "_factoryConfig"
; ";"
} "}"
method_declaration
modifiers
protected "protected"
abstract "abstract"
type_identifier "DeserializerFactory"
identifier "withConfig"
formal_parameters
( "("
formal_parameter
type_identifier "DeserializerFactoryConfig"
identifier "config"
) ")"
; ";"
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Convenience method for creating a new factory ins"...
method_declaration (+34 nodes collapsed)
block_comment "/**\n * Convenience method for creating a new factory ins"...
method_declaration (+34 nodes collapsed)
block_comment "/**\n * Convenience method for creating a new factory ins"...
method_declaration (+34 nodes collapsed)
block_comment "/**\n * Convenience method for creating a new factory ins"...
method_declaration (+34 nodes collapsed)
block_comment "/**\n * Convenience method for creating a new factory ins"...
method_declaration (+34 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+168 nodes collapsed)
block_comment "/**\n * Method that will find abstract type mapping for s"...
method_declaration (+123 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Value instantiator is created both based on creat"...
method_declaration (+341 nodes collapsed)
method_declaration (+210 nodes collapsed)
block_comment "/**\n * Method that will construct standard default {@lin"...
method_declaration (+203 nodes collapsed)
method_declaration (+307 nodes collapsed)
method_declaration (+290 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+1300 nodes collapsed)
block_comment "/**\n * Helper method called when there is the explicit \""...
method_declaration (+344 nodes collapsed)
block_comment "/**\n * Helper method called when there is the explicit \""...
method_declaration (+291 nodes collapsed)
block_comment "/**\n * Helper method called when there is the explicit \""...
method_declaration (+388 nodes collapsed)
method_declaration (+151 nodes collapsed)
method_declaration (+407 nodes collapsed)
method_declaration (+1029 nodes collapsed)
method_declaration (+341 nodes collapsed)
line_comment "// 01-Dec-2016, tatu: As per [databind#265] we cannot yet su"...
line_comment "// of unwrapped values through creator properties, so fail"...
method_declaration (+61 nodes collapsed)
block_comment "/**\n * Method that will construct a property object that"...
method_declaration (+437 nodes collapsed)
method_declaration (+120 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+313 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+587 nodes collapsed)
method_declaration (+89 nodes collapsed)
line_comment "// Copied almost verbatim from \"createCollectionDeserializer"...
method_declaration (+217 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+769 nodes collapsed)
line_comment "// Copied almost verbatim from \"createMapDeserializer\" -- sh"...
method_declaration (+271 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Factory method for constructing serializers of {@"...
method_declaration (+395 nodes collapsed)
method_declaration (+128 nodes collapsed)
method_declaration (+326 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration
modifiers
marker_annotation
@ "@"
identifier "Override"
public "public"
type_identifier "TypeDeserializer"
identifier "findTypeDeserializer"
formal_parameters
( "("
formal_parameter
type_identifier "DeserializationConfig"
identifier "config"
, ","
formal_parameter
type_identifier "JavaType"
identifier "baseType"
) ")"
throws
throws "throws"
type_identifier "JsonMappingException"
block
{ "{"
local_variable_declaration
type_identifier "BeanDescription"
variable_declarator
identifier "bean"
= "="
method_invocation
identifier "config"
. "."
identifier "introspectClassAnnotations"
argument_list
( "("
method_invocation
identifier "baseType"
. "."
identifier "getRawClass"
argument_list
( "("
) ")"
) ")"
; ";"
local_variable_declaration
type_identifier "AnnotatedClass"
variable_declarator
identifier "ac"
= "="
method_invocation
identifier "bean"
. "."
identifier "getClassInfo"
argument_list
( "("
) ")"
; ";"
local_variable_declaration
type_identifier "AnnotationIntrospector"
variable_declarator
identifier "ai"
= "="
method_invocation
identifier "config"
. "."
identifier "getAnnotationIntrospector"
argument_list
( "("
) ")"
; ";"
local_variable_declaration (+24 nodes collapsed)
line_comment "// Ok: if there is no explicit type info handler, we may wan"...
line_comment "// use a default. If so, config object knows what to use."
local_variable_declaration
generic_type
type_identifier "Collection"
type_arguments
< "<"
type_identifier "NamedType"
> ">"
variable_declarator
identifier "subtypes"
= "="
null_literal "null"
; ";"
if_statement (+66 nodes collapsed)
line_comment "// May need to figure out default implementation, if none fo"...
line_comment "// (note: check for abstract type is not 100% mandatory, mor"...
if_statement (+96 nodes collapsed)
line_comment "// 05-Apt-2018, tatu: Since we get non-mapping exception due"...
line_comment "// map to better type here"
try_statement
try "try"
block
{ "{"
return_statement
return "return"
method_invocation
identifier "b"
. "."
identifier "buildTypeDeserializer"
argument_list
( "("
identifier "config"
, ","
identifier "baseType"
, ","
identifier "subtypes"
) ")"
; ";"
} "}"
catch_clause
catch "catch"
( "("
catch_formal_parameter
catch_type
type_identifier "IllegalArgumentException"
identifier "e0"
) ")"
block
{ "{"
local_variable_declaration
type_identifier "InvalidDefinitionException"
variable_declarator
identifier "e"
= "="
method_invocation
identifier "InvalidDefinitionException"
. "."
identifier "from"
argument_list
( "("
cast_expression
( "("
type_identifier "JsonParser"
) ")"
null_literal "null"
, ","
method_invocation
identifier "e0"
. "."
identifier "getMessage"
argument_list
( "("
) ")"
, ","
identifier "baseType"
) ")"
; ";"
expression_statement
method_invocation
identifier "e"
. "."
identifier "initCause"
argument_list
( "("
identifier "e0"
) ")"
; ";"
throw_statement
throw "throw"
identifier "e"
; ";"
} "}"
} "}"
block_comment "/**\n * Overridable method called after checking all othe"...
method_declaration (+55 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+256 nodes collapsed)
method_declaration (+481 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Method called to create a type information deseri"...
method_declaration (+131 nodes collapsed)
block_comment "/**\n * Method called to find and create a type informati"...
method_declaration (+144 nodes collapsed)
block_comment "/**\n * Helper method called to find one of default seria"...
method_declaration (+621 nodes collapsed)
method_declaration (+73 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+100 nodes collapsed)
method_declaration (+110 nodes collapsed)
method_declaration (+110 nodes collapsed)
method_declaration (+110 nodes collapsed)
method_declaration (+110 nodes collapsed)
method_declaration (+110 nodes collapsed)
method_declaration (+98 nodes collapsed)
method_declaration (+116 nodes collapsed)
method_declaration (+116 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Helper method called to check if a class or metho"...
method_declaration (+94 nodes collapsed)
block_comment "/**\n * Helper method called to check if a class or metho"...
method_declaration (+89 nodes collapsed)
block_comment "/**\n * @since 2.9\n */"
method_declaration (+94 nodes collapsed)
block_comment "/**\n * Helper method used to resolve additional type-rel"...
method_declaration (+381 nodes collapsed)
method_declaration (+125 nodes collapsed)
block_comment "/**\n * @since 2.9\n */"
method_declaration (+97 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Method called to see if given method has annotati"...
method_declaration (+78 nodes collapsed)
block_comment "/**\n * @deprecated since 2.8 call {@link #resolveMemberA"...
method_declaration (+46 nodes collapsed)
block_comment "/**\n * @deprecated since 2.8 call <code>findJsonValueMet"...
method_declaration (+62 nodes collapsed)
} "}"

After

program
package_declaration
package "package"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "deser"
; ";"
import_declaration
import "import"
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
asterisk
* "*"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "concurrent"
. "."
asterisk
* "*"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "java"
. "."
identifier "util"
. "."
identifier "concurrent"
. "."
identifier "atomic"
. "."
identifier "AtomicReference"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "annotation"
. "."
identifier "JacksonInject"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "annotation"
. "."
identifier "JsonCreator"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "annotation"
. "."
identifier "JsonIgnoreProperties"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "annotation"
. "."
identifier "JsonCreator"
. "."
identifier "Mode"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
identifier "JsonLocation"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "core"
. "."
identifier "JsonParser"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
asterisk
* "*"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "cfg"
. "."
identifier "DeserializerFactoryConfig"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "cfg"
. "."
identifier "HandlerInstantiator"
; ";"
import_declaration (+22 nodes collapsed)
import_declaration (+22 nodes collapsed)
import_declaration (+22 nodes collapsed)
import_declaration (+22 nodes collapsed)
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "exc"
. "."
identifier "InvalidDefinitionException"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "ext"
. "."
identifier "OptionalHandlerFactory"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "introspect"
. "."
asterisk
* "*"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "jsontype"
. "."
identifier "NamedType"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "jsontype"
. "."
identifier "TypeDeserializer"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "jsontype"
. "."
identifier "TypeResolverBuilder"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "type"
. "."
asterisk
* "*"
; ";"
import_declaration
import "import"
scoped_identifier
scoped_identifier
scoped_identifier
scoped_identifier
identifier "com"
. "."
identifier "fasterxml"
. "."
identifier "jackson"
. "."
identifier "databind"
. "."
identifier "util"
. "."
asterisk
* "*"
; ";"
block_comment "/**\n * Abstract factory base class that can provide deserial"...
class_declaration
modifiers
annotation
@ "@"
identifier "SuppressWarnings"
annotation_argument_list
( "("
string_literal
" "\""
string_fragment "serial"
" "\""
) ")"
public "public"
abstract "abstract"
class "class"
identifier "BasicDeserializerFactory"
superclass
extends "extends"
type_identifier "DeserializerFactory"
super_interfaces
implements "implements"
type_list
scoped_type_identifier
scoped_type_identifier
type_identifier "java"
. "."
type_identifier "io"
. "."
type_identifier "Serializable"
class_body
{ "{"
field_declaration
modifiers
private "private"
final "final"
static "static"
generic_type
type_identifier "Class"
type_arguments
< "<"
wildcard
? "?"
> ">"
variable_declarator
identifier "CLASS_OBJECT"
= "="
class_literal
type_identifier "Object"
. "."
class "class"
; ";"
field_declaration
modifiers
private "private"
final "final"
static "static"
generic_type
type_identifier "Class"
type_arguments
< "<"
wildcard
? "?"
> ">"
variable_declarator
identifier "CLASS_STRING"
= "="
class_literal
type_identifier "String"
. "."
class "class"
; ";"
field_declaration
modifiers
private "private"
final "final"
static "static"
generic_type
type_identifier "Class"
type_arguments
< "<"
wildcard
? "?"
> ">"
variable_declarator
identifier "CLASS_CHAR_SEQUENCE"
= "="
class_literal
type_identifier "CharSequence"
. "."
class "class"
; ";"
field_declaration
modifiers
private "private"
final "final"
static "static"
generic_type
type_identifier "Class"
type_arguments
< "<"
wildcard
? "?"
> ">"
variable_declarator
identifier "CLASS_ITERABLE"
= "="
class_literal
type_identifier "Iterable"
. "."
class "class"
; ";"
field_declaration (+23 nodes collapsed)
block_comment "/**\n * We need a placeholder for creator properties that"...
field_declaration
modifiers
protected "protected"
final "final"
static "static"
type_identifier "PropertyName"
variable_declarator
identifier "UNWRAPPED_CREATOR_PARAM_NAME"
= "="
object_creation_expression
new "new"
type_identifier "PropertyName"
argument_list
( "("
string_literal
" "\""
string_fragment "@JsonUnwrapped"
" "\""
) ")"
; ";"
block_comment "/* We do some defaulting for abstract Map classes and\n *"...
field_declaration (+55 nodes collapsed)
static_initializer (+149 nodes collapsed)
block_comment "/* We do some defaulting for abstract Collection classes and"...
field_declaration (+55 nodes collapsed)
static_initializer (+163 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Configuration settings for this factory; immutabl"...
field_declaration
modifiers
protected "protected"
final "final"
type_identifier "DeserializerFactoryConfig"
variable_declarator
identifier "_factoryConfig"
; ";"
block_comment "/*\n /****************************************************"...
constructor_declaration
modifiers
protected "protected"
identifier "BasicDeserializerFactory"
formal_parameters
( "("
formal_parameter
type_identifier "DeserializerFactoryConfig"
identifier "config"
) ")"
constructor_body
{ "{"
expression_statement
assignment_expression
identifier "_factoryConfig"
= "="
identifier "config"
; ";"
} "}"
block_comment "/**\n * Method for getting current {@link DeserializerFac"...
method_declaration
modifiers
public "public"
type_identifier "DeserializerFactoryConfig"
identifier "getFactoryConfig"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "_factoryConfig"
; ";"
} "}"
method_declaration
modifiers
protected "protected"
abstract "abstract"
type_identifier "DeserializerFactory"
identifier "withConfig"
formal_parameters
( "("
formal_parameter
type_identifier "DeserializerFactoryConfig"
identifier "config"
) ")"
; ";"
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Convenience method for creating a new factory ins"...
method_declaration (+34 nodes collapsed)
block_comment "/**\n * Convenience method for creating a new factory ins"...
method_declaration (+34 nodes collapsed)
block_comment "/**\n * Convenience method for creating a new factory ins"...
method_declaration (+34 nodes collapsed)
block_comment "/**\n * Convenience method for creating a new factory ins"...
method_declaration (+34 nodes collapsed)
block_comment "/**\n * Convenience method for creating a new factory ins"...
method_declaration (+34 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+168 nodes collapsed)
block_comment "/**\n * Method that will find abstract type mapping for s"...
method_declaration (+123 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Value instantiator is created both based on creat"...
method_declaration (+341 nodes collapsed)
method_declaration (+210 nodes collapsed)
block_comment "/**\n * Method that will construct standard default {@lin"...
method_declaration (+203 nodes collapsed)
method_declaration (+307 nodes collapsed)
method_declaration (+290 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+1300 nodes collapsed)
block_comment "/**\n * Helper method called when there is the explicit \""...
method_declaration (+344 nodes collapsed)
block_comment "/**\n * Helper method called when there is the explicit \""...
method_declaration (+291 nodes collapsed)
block_comment "/**\n * Helper method called when there is the explicit \""...
method_declaration (+388 nodes collapsed)
method_declaration (+151 nodes collapsed)
method_declaration (+407 nodes collapsed)
method_declaration (+1029 nodes collapsed)
method_declaration (+341 nodes collapsed)
line_comment "// 01-Dec-2016, tatu: As per [databind#265] we cannot yet su"...
line_comment "// of unwrapped values through creator properties, so fail"...
method_declaration (+61 nodes collapsed)
block_comment "/**\n * Method that will construct a property object that"...
method_declaration (+437 nodes collapsed)
method_declaration (+120 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+313 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+587 nodes collapsed)
method_declaration (+89 nodes collapsed)
line_comment "// Copied almost verbatim from \"createCollectionDeserializer"...
method_declaration (+217 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+769 nodes collapsed)
line_comment "// Copied almost verbatim from \"createMapDeserializer\" -- sh"...
method_declaration (+271 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Factory method for constructing serializers of {@"...
method_declaration (+395 nodes collapsed)
method_declaration (+128 nodes collapsed)
method_declaration (+326 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration
modifiers
marker_annotation
@ "@"
identifier "Override"
public "public"
type_identifier "TypeDeserializer"
identifier "findTypeDeserializer"
formal_parameters
( "("
formal_parameter
type_identifier "DeserializationConfig"
identifier "config"
, ","
formal_parameter
type_identifier "JavaType"
identifier "baseType"
) ")"
throws
throws "throws"
type_identifier "JsonMappingException"
block
{ "{"
local_variable_declaration
type_identifier "BeanDescription"
variable_declarator
identifier "bean"
= "="
method_invocation
identifier "config"
. "."
identifier "introspectClassAnnotations"
argument_list
( "("
method_invocation
identifier "baseType"
. "."
identifier "getRawClass"
argument_list
( "("
) ")"
) ")"
; ";"
local_variable_declaration
type_identifier "AnnotatedClass"
variable_declarator
identifier "ac"
= "="
method_invocation
identifier "bean"
. "."
identifier "getClassInfo"
argument_list
( "("
) ")"
; ";"
local_variable_declaration
type_identifier "AnnotationIntrospector"
variable_declarator
identifier "ai"
= "="
method_invocation
identifier "config"
. "."
identifier "getAnnotationIntrospector"
argument_list
( "("
) ")"
; ";"
local_variable_declaration (+24 nodes collapsed)
line_comment "// Ok: if there is no explicit type info handler, we may wan"...
line_comment "// use a default. If so, config object knows what to use."
local_variable_declaration
generic_type
type_identifier "Collection"
type_arguments
< "<"
type_identifier "NamedType"
> ">"
variable_declarator
identifier "subtypes"
= "="
null_literal "null"
; ";"
if_statement (+66 nodes collapsed)
line_comment "// May need to figure out default implementation, if none fo"...
line_comment "// (note: check for abstract type is not 100% mandatory, mor"...
if_statement (+96 nodes collapsed)
line_comment "// 05-Apt-2018, tatu: Since we get non-mapping exception due"...
line_comment "// map to better type here"
try_statement
try "try"
block
{ "{"
return_statement
return "return"
method_invocation
identifier "b"
. "."
identifier "buildTypeDeserializer"
argument_list
( "("
identifier "config"
, ","
identifier "baseType"
, ","
identifier "subtypes"
) ")"
; ";"
} "}"
catch_clause
catch "catch"
( "("
catch_formal_parameter
catch_type
type_identifier "IllegalArgumentException"
identifier "e0"
) ")"
block
{ "{"
local_variable_declaration
type_identifier "InvalidDefinitionException"
variable_declarator
identifier "e"
= "="
method_invocation
identifier "InvalidDefinitionException"
. "."
identifier "from"
argument_list
( "("
cast_expression
( "("
type_identifier "JsonParser"
) ")"
null_literal "null"
, ","
method_invocation
identifier "ClassUtil"
. "."
identifier "exceptionMessage"
argument_list
( "("
identifier "e0"
) ")"
, ","
identifier "baseType"
) ")"
; ";"
expression_statement
method_invocation
identifier "e"
. "."
identifier "initCause"
argument_list
( "("
identifier "e0"
) ")"
; ";"
throw_statement
throw "throw"
identifier "e"
; ";"
} "}"
} "}"
block_comment "/**\n * Overridable method called after checking all othe"...
method_declaration (+55 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+256 nodes collapsed)
method_declaration (+481 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Method called to create a type information deseri"...
method_declaration (+131 nodes collapsed)
block_comment "/**\n * Method called to find and create a type informati"...
method_declaration (+144 nodes collapsed)
block_comment "/**\n * Helper method called to find one of default seria"...
method_declaration (+621 nodes collapsed)
method_declaration (+73 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+100 nodes collapsed)
method_declaration (+110 nodes collapsed)
method_declaration (+110 nodes collapsed)
method_declaration (+110 nodes collapsed)
method_declaration (+110 nodes collapsed)
method_declaration (+110 nodes collapsed)
method_declaration (+98 nodes collapsed)
method_declaration (+116 nodes collapsed)
method_declaration (+116 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Helper method called to check if a class or metho"...
method_declaration (+94 nodes collapsed)
block_comment "/**\n * Helper method called to check if a class or metho"...
method_declaration (+89 nodes collapsed)
block_comment "/**\n * @since 2.9\n */"
method_declaration (+94 nodes collapsed)
block_comment "/**\n * Helper method used to resolve additional type-rel"...
method_declaration (+381 nodes collapsed)
method_declaration (+125 nodes collapsed)
block_comment "/**\n * @since 2.9\n */"
method_declaration (+97 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Method called to see if given method has annotati"...
method_declaration (+78 nodes collapsed)
block_comment "/**\n * @deprecated since 2.8 call {@link #resolveMemberA"...
method_declaration (+46 nodes collapsed)
block_comment "/**\n * @deprecated since 2.8 call <code>findJsonValueMet"...
method_declaration (+62 nodes collapsed)
} "}"