class_body
{ "{"
field_declaration
modifiers
private "private"
static "static"
final "final"
integral_type
long "long"
variable_declarator
identifier "serialVersionUID"
= "="
decimal_integer_literal "1"
; ";"
field_declaration
modifiers
protected "protected"
final "final"
static "static"
type_identifier "PropertyName"
variable_declarator
identifier "TEMP_PROPERTY_NAME"
= "="
object_creation_expression
new "new"
type_identifier "PropertyName"
argument_list
( "("
string_literal
" "\""
string_fragment "#temporary-name"
" "\""
) ")"
; ";"
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Annotations from the bean class: used for accessi"...
field_declaration
modifiers
final "final"
private "private"
transient "transient"
type_identifier "Annotations"
variable_declarator
identifier "_classAnnotations"
; ";"
block_comment "/**\n * Declared type of the bean this deserializer handl"...
field_declaration
modifiers
final "final"
protected "protected"
type_identifier "JavaType"
variable_declarator
identifier "_beanType"
; ";"
block_comment "/**\n * Requested shape from bean class annotations.\n "...
field_declaration
modifiers
final "final"
protected "protected"
scoped_type_identifier
type_identifier "JsonFormat"
. "."
type_identifier "Shape"
variable_declarator
identifier "_serializationShape"
; ";"
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Object that handles details of constructing initi"...
field_declaration
modifiers
protected "protected"
final "final"
type_identifier "ValueInstantiator"
variable_declarator
identifier "_valueInstantiator"
; ";"
block_comment "/**\n * Deserializer that is used iff delegate-based crea"...
field_declaration
modifiers
protected "protected"
generic_type
type_identifier "JsonDeserializer"
type_arguments
< "<"
type_identifier "Object"
> ">"
variable_declarator
identifier "_delegateDeserializer"
; ";"
block_comment "/**\n * Deserializer that is used iff array-delegate-base"...
field_declaration
modifiers
protected "protected"
generic_type
type_identifier "JsonDeserializer"
type_arguments
< "<"
type_identifier "Object"
> ">"
variable_declarator
identifier "_arrayDelegateDeserializer"
; ";"
block_comment "/**\n * If the bean needs to be instantiated using constr"...
field_declaration
modifiers
protected "protected"
type_identifier "PropertyBasedCreator"
variable_declarator
identifier "_propertyBasedCreator"
; ";"
block_comment "/**\n * Flag that is set to mark \"non-standard\" cases; wh"...
field_declaration
modifiers
protected "protected"
boolean_type "boolean"
variable_declarator
identifier "_nonStandardCreation"
; ";"
block_comment "/**\n * Flag that indicates that no \"special features\" wh"...
field_declaration
modifiers
protected "protected"
boolean_type "boolean"
variable_declarator
identifier "_vanillaProcessing"
; ";"
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Mapping of property names to properties, built wh"...
field_declaration
modifiers
final "final"
protected "protected"
type_identifier "BeanPropertyMap"
variable_declarator
identifier "_beanProperties"
; ";"
block_comment "/**\n * List of {@link ValueInjector}s, if any injectable"...
field_declaration
modifiers
final "final"
protected "protected"
array_type
type_identifier "ValueInjector"
dimensions
[ "["
] "]"
variable_declarator
identifier "_injectables"
; ";"
block_comment "/**\n * Fallback setter used for handling any properties "...
field_declaration
modifiers
protected "protected"
type_identifier "SettableAnyProperty"
variable_declarator
identifier "_anySetter"
; ";"
block_comment "/**\n * In addition to properties that are set, we will a"...
field_declaration
modifiers
final "final"
protected "protected"
generic_type
type_identifier "Set"
type_arguments
< "<"
type_identifier "String"
> ">"
variable_declarator
identifier "_ignorableProps"
; ";"
block_comment "/**\n * Flag that can be set to ignore and skip unknown p"...
field_declaration
modifiers
final "final"
protected "protected"
boolean_type "boolean"
variable_declarator
identifier "_ignoreAllUnknown"
; ";"
block_comment "/**\n * Flag that indicates that some aspect of deseriali"...
field_declaration
modifiers
final "final"
protected "protected"
boolean_type "boolean"
variable_declarator
identifier "_needViewProcesing"
; ";"
block_comment "/**\n * We may also have one or more back reference field"...
field_declaration
modifiers
final "final"
protected "protected"
generic_type
type_identifier "Map"
type_arguments
< "<"
type_identifier "String"
, ","
type_identifier "SettableBeanProperty"
> ">"
variable_declarator
identifier "_backRefs"
; ";"
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Lazily constructed map used to contain deserializ"...
field_declaration
modifiers
protected "protected"
transient "transient"
generic_type
type_identifier "HashMap"
type_arguments
< "<"
type_identifier "ClassKey"
, ","
generic_type
type_identifier "JsonDeserializer"
type_arguments
< "<"
type_identifier "Object"
> ">"
> ">"
variable_declarator
identifier "_subDeserializers"
; ";"
block_comment "/**\n * If one of properties has \"unwrapped\" value, we ne"...
field_declaration
modifiers
protected "protected"
type_identifier "UnwrappedPropertyHandler"
variable_declarator
identifier "_unwrappedPropertyHandler"
; ";"
block_comment "/**\n * Handler that we need iff any of properties uses e"...
field_declaration
modifiers
protected "protected"
type_identifier "ExternalTypeHandler"
variable_declarator
identifier "_externalTypeIdHandler"
; ";"
block_comment "/**\n * If an Object Id is to be used for value handled b"...
field_declaration
modifiers
protected "protected"
final "final"
type_identifier "ObjectIdReader"
variable_declarator
identifier "_objectIdReader"
; ";"
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Constructor used when initially building a deseri"...
constructor_declaration (+342 nodes collapsed)
constructor_declaration (+25 nodes collapsed)
constructor_declaration (+177 nodes collapsed)
constructor_declaration (+254 nodes collapsed)
constructor_declaration (+235 nodes collapsed)
constructor_declaration (+191 nodes collapsed)
block_comment "/**\n * @since 2.8\n */"
constructor_declaration (+177 nodes collapsed)
method_declaration (+21 nodes collapsed)
method_declaration
modifiers
public "public"
abstract "abstract"
type_identifier "BeanDeserializerBase"
identifier "withObjectIdReader"
formal_parameters
( "("
formal_parameter
type_identifier "ObjectIdReader"
identifier "oir"
) ")"
; ";"
method_declaration
modifiers
public "public"
abstract "abstract"
type_identifier "BeanDeserializerBase"
identifier "withIgnorableProperties"
formal_parameters
( "("
formal_parameter
generic_type
type_identifier "Set"
type_arguments
< "<"
type_identifier "String"
> ">"
identifier "ignorableProps"
) ")"
; ";"
block_comment "/**\n * Mutant factory method that custom sub-classes mus"...
method_declaration (+46 nodes collapsed)
block_comment "/**\n * Fluent factory for creating a variant that can ha"...
method_declaration
modifiers
protected "protected"
abstract "abstract"
type_identifier "BeanDeserializerBase"
identifier "asArrayDeserializer"
formal_parameters
( "("
) ")"
; ";"
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Method called to finalize setup of this deseriali"...
method_declaration
modifiers
marker_annotation
@ "@"
identifier "Override"
public "public"
void_type "void"
identifier "resolve"
formal_parameters
( "("
formal_parameter
type_identifier "DeserializationContext"
identifier "ctxt"
) ")"
throws
throws "throws"
type_identifier "JsonMappingException"
block
{ "{"
local_variable_declaration
scoped_type_identifier
type_identifier "ExternalTypeHandler"
. "."
type_identifier "Builder"
variable_declarator
identifier "extTypes"
= "="
null_literal "null"
; ";"
line_comment "// if ValueInstantiator can use \"creator\" approach, need to "...
local_variable_declaration
array_type
type_identifier "SettableBeanProperty"
dimensions
[ "["
] "]"
variable_declarator
identifier "creatorProps"
; ";"
if_statement (+49 nodes collapsed)
local_variable_declaration
type_identifier "UnwrappedPropertyHandler"
variable_declarator
identifier "unwrapped"
= "="
null_literal "null"
; ";"
enhanced_for_statement (+527 nodes collapsed)
line_comment "// \"any setter\" may also need to be resolved now"
if_statement (+57 nodes collapsed)
line_comment "// as well as delegate-based constructor:"
if_statement (+111 nodes collapsed)
line_comment "// and array-delegate-based constructor:"
if_statement (+111 nodes collapsed)
line_comment "// And now that we know CreatorProperty instances are also r"...
if_statement (+29 nodes collapsed)
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
identifier "extTypes"
!= "!="
null_literal "null"
) ")"
block
{ "{"
line_comment "// 21-Jun-2016, tatu: related to [databind#999], may need to"...
line_comment "// so need to pass collected properties"
expression_statement
assignment_expression
identifier "_externalTypeIdHandler"
= "="
method_invocation
identifier "extTypes"
. "."
identifier "build"
argument_list
( "("
) ")"
; ";"
line_comment "// we consider this non-standard, to offline handling"
expression_statement
assignment_expression
identifier "_nonStandardCreation"
= "="
true "true"
; ";"
} "}"
expression_statement
assignment_expression
identifier "_unwrappedPropertyHandler"
= "="
identifier "unwrapped"
; ";"
if_statement
if "if"
parenthesized_expression
( "("
binary_expression
identifier "unwrapped"
!= "!="
null_literal "null"
) ")"
block
{ "{"
line_comment "// we consider this non-standard, to offline handling"
expression_statement
assignment_expression
identifier "_nonStandardCreation"
= "="
true "true"
; ";"
} "}"
line_comment "// may need to disable vanilla processing, if unwrapped hand"...
expression_statement
assignment_expression
identifier "_vanillaProcessing"
= "="
binary_expression
identifier "_vanillaProcessing"
&& "&&"
unary_expression
! "!"
identifier "_nonStandardCreation"
; ";"
} "}"
method_declaration (+169 nodes collapsed)
block_comment "/**\n * Helper method that can be used to see if specifie"...
method_declaration (+179 nodes collapsed)
block_comment "/**\n * Although most of post-processing is done in resol"...
method_declaration (+853 nodes collapsed)
block_comment "/**\n * Helper method called to see if given property is "...
method_declaration (+275 nodes collapsed)
block_comment "/**\n * Method that wraps given property with {@link Obje"...
method_declaration (+99 nodes collapsed)
block_comment "/**\n * Helper method called to see if given property mig"...
method_declaration (+146 nodes collapsed)
block_comment "/**\n * Helper method that will handle gruesome details o"...
method_declaration (+286 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration
modifiers
marker_annotation
@ "@"
identifier "Override"
public "public"
boolean_type "boolean"
identifier "isCachable"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
true "true"
; ";"
} "}"
method_declaration (+30 nodes collapsed)
block_comment "/**\n * Overridden to return true for those instances tha"...
method_declaration
modifiers
marker_annotation
@ "@"
identifier "Override"
public "public"
type_identifier "ObjectIdReader"
identifier "getObjectIdReader"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "_objectIdReader"
; ";"
} "}"
method_declaration (+28 nodes collapsed)
method_declaration
modifiers
public "public"
boolean_type "boolean"
identifier "hasViews"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "_needViewProcesing"
; ";"
} "}"
block_comment "/**\n * Accessor for checking number of deserialized prop"...
method_declaration (+22 nodes collapsed)
method_declaration (+72 nodes collapsed)
block_comment "/**\n * @deprecated Since 2.3, use {@link #handledType()}"...
method_declaration (+31 nodes collapsed)
method_declaration
modifiers
marker_annotation
@ "@"
identifier "Override"
public "public"
type_identifier "JavaType"
identifier "getValueType"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "_beanType"
; ";"
} "}"
block_comment "/**\n * Accessor for iterating over properties this deser"...
method_declaration (+51 nodes collapsed)
block_comment "/**\n * Accessor for finding properties that represents v"...
method_declaration (+64 nodes collapsed)
method_declaration (+30 nodes collapsed)
block_comment "/**\n * Accessor for finding the property with given name"...
method_declaration (+74 nodes collapsed)
block_comment "/**\n * Alternate find method that tries to locate a prop"...
method_declaration (+75 nodes collapsed)
block_comment "/**\n * Method needed by {@link BeanDeserializerFactory} "...
method_declaration (+44 nodes collapsed)
method_declaration
modifiers
public "public"
type_identifier "ValueInstantiator"
identifier "getValueInstantiator"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "_valueInstantiator"
; ";"
} "}"
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Method that can be used to replace an existing pr"...
method_declaration (+28 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * General version used when handling needs more adv"...
method_declaration
modifiers
public "public"
abstract "abstract"
type_identifier "Object"
identifier "deserializeFromObject"
formal_parameters
( "("
formal_parameter
type_identifier "JsonParser"
identifier "p"
, ","
formal_parameter
type_identifier "DeserializationContext"
identifier "ctxt"
) ")"
throws
throws "throws"
type_identifier "IOException"
; ";"
method_declaration (+264 nodes collapsed)
block_comment "/**\n * Offlined method called to handle \"native\" Object "...
method_declaration (+183 nodes collapsed)
block_comment "/**\n * Helper method we need to do necessary conversion "...
method_declaration (+210 nodes collapsed)
line_comment "// NOTE: currently only used by standard BeanDeserializer (n"...
block_comment "/**\n * Alternative deserialization method used when we e"...
method_declaration (+32 nodes collapsed)
block_comment "/**\n * Method called in cases where it looks like we got"...
method_declaration (+135 nodes collapsed)
method_declaration (+140 nodes collapsed)
method_declaration (+26 nodes collapsed)
method_declaration (+372 nodes collapsed)
method_declaration (+145 nodes collapsed)
block_comment "/**\n * Method called to deserialize POJO value from a JS"...
method_declaration (+229 nodes collapsed)
block_comment "/**\n * Method called to deserialize POJO value from a JS"...
method_declaration (+136 nodes collapsed)
method_declaration (+412 nodes collapsed)
method_declaration (+57 nodes collapsed)
block_comment "/*\n /****************************************************"...
method_declaration (+44 nodes collapsed)
block_comment "/**\n * Method called to handle set of one or more unknow"...
method_declaration (+121 nodes collapsed)
block_comment "/**\n * Helper method called for an unknown property, whe"...
method_declaration (+144 nodes collapsed)
block_comment "/**\n * Method called when a JSON property is encountered"...
method_declaration (+107 nodes collapsed)
block_comment "/**\n * Method called when an explicitly ignored property"...
method_declaration (+78 nodes collapsed)
block_comment "/**\n * Method called in cases where we may have polymorp"...
method_declaration (+229 nodes collapsed)
block_comment "/**\n * Helper method called to (try to) locate deseriali"...
method_declaration (+224 nodes collapsed)
block_comment "/*\n /****************************************************"...
block_comment "/**\n * Method that will modify caught exception (passed "...
method_declaration (+52 nodes collapsed)
method_declaration (+57 nodes collapsed)
method_declaration (+185 nodes collapsed)
method_declaration (+179 nodes collapsed)
} "}"