| Access | Constructor and Description |
|---|---|
| public | AtomicReferenceDeserializer(JavaType fullType, ValueInstantiator inst, TypeDeserializer typeDeser, ValueDeserializer<?> deser)
|
| Modifier and Type | Method and Description |
|---|---|
| public Object | getAbsentValue(DeserializationContext ctxt)
Overrides tools. Overrides default tools. Method called to determine placeholder value to be used for cases where no value was obtained from input but we must pass a value nonetheless: the common case is that of Creator methods requiring passing a value for every parameter. |
| public AtomicReference | getNullValue(DeserializationContext ctxt)
Implements abstract tools. Implements tools. Method that can be called to determine value to be used for
representing null values (values deserialized when JSON token
is |
| public Object | getReferenced(AtomicReference<Object> reference)
Implements abstract tools. Method that may be called to find contents of specified reference, if any; or `null` if none. |
| public AtomicReference | referenceValue(Object contents)
Implements abstract tools.
|
| public Boolean | supportsUpdate(DeserializationConfig config)
Overrides tools. By default we assume that updateability mostly relies on value deserializer; if it supports updates, typically that's what matters. |
| public AtomicReference | updateReference(AtomicReference<Object> reference, Object contents)
Implements abstract tools. Method called in case of "merging update", in which we should try update reference instead of creating a new one. |
| public AtomicReferenceDeserializer | withResolved(TypeDeserializer typeDeser, ValueDeserializer<?> valueDeser)
Implements abstract tools. Mutant factory method called when changes are needed; should construct newly configured instance with new values as indicated. |
| AtomicReferenceDeserializer | back to summary |
|---|---|
| public AtomicReferenceDeserializer(JavaType fullType, ValueInstantiator inst, TypeDeserializer typeDeser, ValueDeserializer<?> deser) | |
| getAbsentValue | back to summary |
|---|---|
| public Object getAbsentValue(DeserializationContext ctxt) Overrides tools. Overrides default tools. Doc from tools. Method called to determine placeholder value to be used for cases
where no value was obtained from input but we must pass a value
nonetheless: the common case is that of Creator methods requiring
passing a value for every parameter.
Usually this is same as This method needs to be called every time a determination is made.
Default implementation simply calls
| |
| getNullValue | back to summary |
|---|---|
| public AtomicReference Implements abstract tools. Implements tools. Doc from tools. Method that can be called to determine value to be used for
representing null values (values deserialized when JSON token
is
This method may be called once, or multiple times, depending on what
Default implementation simply returns null.
| |
| getReferenced | back to summary |
|---|---|
| public Object getReferenced(AtomicReference<Object> reference) Implements abstract tools. Doc from tools. Method that may be called to find contents of specified reference, if any; or `null` if none. Note that method should never fail, so for types that use concept of "absence" vs "presence", `null` is to be returned for both "absent" and "reference to `null`" cases.
| |
| referenceValue | back to summary |
|---|---|
| public AtomicReference Implements abstract tools.
| |
| supportsUpdate | back to summary |
|---|---|
| public Boolean supportsUpdate(DeserializationConfig config) Overrides tools. Doc from tools. By default we assume that updateability mostly relies on value deserializer; if it supports updates, typically that's what matters. So let's just delegate.
| |
| updateReference | back to summary |
|---|---|
| public AtomicReference Implements abstract tools. Doc from tools. Method called in case of "merging update", in which we should try update reference instead of creating a new one. If this does not succeed, should just create a new instance.
| |
| withResolved | back to summary |
|---|---|
| public AtomicReferenceDeserializer withResolved(TypeDeserializer typeDeser, ValueDeserializer<?> valueDeser) Implements abstract tools. Doc from tools. Mutant factory method called when changes are needed; should construct newly configured instance with new values as indicated. Note caller has verified that there are changes, so implementations need NOT check if a new instance is needed.
| |