49
49
* Depending on what is annotated,
50
50
* value is either an instance of annotated class (used globablly
51
51
* anywhere where class deserializer is needed); or only used for
52
- * deserializing property access via a setter method .
52
+ * deserializing the value of the property annotated .
53
53
*/
54
54
@ SuppressWarnings ("rawtypes" ) // to work around JDK8 bug wrt Class-valued annotation properties
55
55
public Class <? extends JsonDeserializer > using ()
@@ -58,18 +58,22 @@ public Class<? extends JsonDeserializer> using()
58
58
/**
59
59
* Deserializer class to use for deserializing contents (elements
60
60
* of a Collection/array, values of Maps) of annotated property.
61
- * Can only be used on instances (methods, fields, constructors),
62
- * and not value classes themselves.
61
+ * Can only be used on accessors (methods, fields, constructors), to
62
+ * apply to values of {@link java.util.Map}-valued properties; not
63
+ * applicable for value types used as Array elements
64
+ * or {@link java.util.Collection} and {@link java.util.Map} values.
63
65
*/
64
66
@ SuppressWarnings ("rawtypes" ) // to work around JDK8 bug wrt Class-valued annotation properties
65
67
public Class <? extends JsonDeserializer > contentUsing ()
66
68
default JsonDeserializer .None .class ;
67
69
68
70
/**
69
71
* Deserializer class to use for deserializing Map keys
70
- * of annotated property.
71
- * Can only be used on instances (methods, fields, constructors),
72
- * and not value classes themselves.
72
+ * of annotated property or Map keys of value type so annotated.
73
+ * Can be used both on accessors (methods, fields, constructors), to
74
+ * apply to values of {@link java.util.Map}-valued properties, and
75
+ * on "key" classes, to apply to use of annotated type as
76
+ * {@link java.util.Map} keys (latter starting with Jackson 2.11).
73
77
*/
74
78
public Class <? extends KeyDeserializer > keyUsing ()
75
79
default KeyDeserializer .None .class ;
0 commit comments