Package org.codehaus.jackson.annotate
Annotation Type JsonAutoDetect
-
@Target(TYPE) @Retention(RUNTIME) public @interface JsonAutoDetect
Class annotation that can be used to define which kinds of Methods are to be detected by auto-detection. 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.Pseudo-value
NONE
means that all auto-detection is disabled for the specific class that annotation is applied to (including its super-types, but only when resolving that class). Pseudo-valueALWAYS
means that auto-detection is enabled for all method types for the class in similar way.The default value is
ALWAYS
: that is, by default, auto-detection is enabled for all classes unless instructed otherwise.Starting with version 1.5, it is also possible to use more fine-grained definitions, to basically define minimum visibility level needed. Defaults are different for different types (getters need to be public; setters can have any access modifier, for example).
-
-
Optional Element Summary
Optional Elements Modifier and Type Optional Element Description JsonAutoDetect.Visibility
creatorVisibility
Minimum visibility required for auto-detecting Creator methods, except for no-argument constructors (which are always detected no matter what).JsonAutoDetect.Visibility
fieldVisibility
Minimum visibility required for auto-detecting member fields.JsonAutoDetect.Visibility
getterVisibility
Minimum visibility required for auto-detecting regular getter methods.JsonAutoDetect.Visibility
isGetterVisibility
Minimum visibility required for auto-detecting is-getter methods.JsonAutoDetect.Visibility
setterVisibility
Minimum visibility required for auto-detecting setter methods.JsonMethod[]
value
Types of property elements (getters, setters, fields, creators) that can be auto-detected.
-
-
-
Element Detail
-
value
JsonMethod[] value
Types of property elements (getters, setters, fields, creators) that can be auto-detected. NOTE: as of 1.5, it is recommended that instead of defining this property, distinct visibility properties are used instead. This because levels used with this method are not explicit, but global defaults that differ for different methods. As such, this property can be considered deprecated and only retained for backwards compatibility.- Default:
- {org.codehaus.jackson.annotate.JsonMethod.ALL}
-
-
-
getterVisibility
JsonAutoDetect.Visibility getterVisibility
Minimum visibility required for auto-detecting regular getter methods.- Since:
- 1.5
- Default:
- org.codehaus.jackson.annotate.JsonAutoDetect.Visibility.DEFAULT
-
-
-
isGetterVisibility
JsonAutoDetect.Visibility isGetterVisibility
Minimum visibility required for auto-detecting is-getter methods.- Since:
- 1.5
- Default:
- org.codehaus.jackson.annotate.JsonAutoDetect.Visibility.DEFAULT
-
-
-
setterVisibility
JsonAutoDetect.Visibility setterVisibility
Minimum visibility required for auto-detecting setter methods.- Since:
- 1.5
- Default:
- org.codehaus.jackson.annotate.JsonAutoDetect.Visibility.DEFAULT
-
-
-
creatorVisibility
JsonAutoDetect.Visibility creatorVisibility
Minimum visibility required for auto-detecting Creator methods, except for no-argument constructors (which are always detected no matter what).- Since:
- 1.5
- Default:
- org.codehaus.jackson.annotate.JsonAutoDetect.Visibility.DEFAULT
-
-
-
fieldVisibility
JsonAutoDetect.Visibility fieldVisibility
Minimum visibility required for auto-detecting member fields.- Since:
- 1.5
- Default:
- org.codehaus.jackson.annotate.JsonAutoDetect.Visibility.DEFAULT
-
-