Package com.fasterxml.jackson.annotation
Annotation Interface JsonAutoDetect
Class annotation that can be used to define which kinds of Methods
are to be detected by auto-detection, and with what minimum access level.
Auto-detection means using name conventions
and/or signature templates to find methods to use for data binding.
For example, so-called "getters" can be auto-detected by looking for
public member methods that return a value, do not take argument,
and have prefix "get" in their name.
Default setting for all accessors is JsonAutoDetect.Visibility.DEFAULT, which
in turn means that the global defaults are used. Defaults
are different for different accessor types (getters need to be public;
setters can have any access modifier, for example).
If you assign different JsonAutoDetect.Visibility type then it will override
global defaults: for example, to require that all setters must be public,
you would use:
@JsonAutoDetect(setterVisibility=Visibility.PUBLIC_ONLY)
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classHelper class used to contain information from a singleJsonAutoDetectannotation, as well as to provide possible overrides from non-annotation sources.static enumEnumeration for possible visibility thresholds (minimum visibility) that can be used to limit which methods (and fields) are auto-detected. -
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionMinimum visibility required for auto-detecting Creator methods, except for no-argument constructors (which are always detected no matter what), and (since 3.0) single-scalar-argument Creators for which there is separate setting.Minimum visibility required for auto-detecting member fields.Minimum visibility required for auto-detecting regular getter methods.Minimum visibility required for auto-detecting is-getter methods.Minimum visibility required for auto-detecting single-scalar-argument constructors, as distinct from "regular" creators (seecreatorVisibility()).Minimum visibility required for auto-detecting setter methods.
-
Element Details
-
getterVisibility
JsonAutoDetect.Visibility getterVisibilityMinimum visibility required for auto-detecting regular getter methods.- Default:
- DEFAULT
-
isGetterVisibility
JsonAutoDetect.Visibility isGetterVisibilityMinimum visibility required for auto-detecting is-getter methods.- Default:
- DEFAULT
-
setterVisibility
JsonAutoDetect.Visibility setterVisibilityMinimum visibility required for auto-detecting setter methods.- Default:
- DEFAULT
-
creatorVisibility
JsonAutoDetect.Visibility creatorVisibilityMinimum visibility required for auto-detecting Creator methods, except for no-argument constructors (which are always detected no matter what), and (since 3.0) single-scalar-argument Creators for which there is separate setting.- Default:
- DEFAULT
-
scalarConstructorVisibility
JsonAutoDetect.Visibility scalarConstructorVisibilityMinimum visibility required for auto-detecting single-scalar-argument constructors, as distinct from "regular" creators (seecreatorVisibility()). Specifically a small set of scalar types is allowed; seePropertyAccessor.SCALAR_CONSTRUCTORfor list.Default value is more permissive than that of general Creators: all non-private scalar-constructors are detected by default.
- Since:
- 3.0
- Default:
- DEFAULT
-
fieldVisibility
JsonAutoDetect.Visibility fieldVisibilityMinimum visibility required for auto-detecting member fields.- Default:
- DEFAULT
-