com.fasterxml.jackson.databind.deser.std

## Class PrimitiveArrayDeserializers<T>

- java.lang.Object
- - com.fasterxml.jackson.databind.JsonDeserializer<T>
  - - com.fasterxml.jackson.databind.deser.std.StdDeserializer<T>
    - - com.fasterxml.jackson.databind.deser.std.PrimitiveArrayDeserializers<T>

All Implemented Interfaces:
  ContextualDeserializer, Serializable

    public abstract class PrimitiveArrayDeserializers<T>
    extends StdDeserializer<T>
    implements ContextualDeserializer

Container for deserializers used for instantiating "primitive arrays", arrays that contain non-object java primitive types.

See Also:
  Serialized Form

### Nested Class Summary

### Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.JsonDeserializer

`JsonDeserializer.None`

### Field Summary

Fields
`protected Boolean` `_unwrapSingle` Specific override for this instance (from proper, or global per-type overrides) to indicate whether single value may be taken to mean an unwrapped one-element array or not.

### Fields inherited from class com.fasterxml.jackson.databind.deser.std.StdDeserializer

`_valueClass, F_MASK_INT_COERCIONS`

### Constructor Summary

Constructors
`protected` `PrimitiveArrayDeserializers(Class<T> cls)`
`protected` `PrimitiveArrayDeserializers(PrimitiveArrayDeserializers<?> base, Boolean unwrapSingle)`

### Method Summary

Methods
`JsonDeserializer<?>` `createContextual(DeserializationContext ctxt, BeanProperty property)` Method called to see if a different (or differently configured) deserializer is needed to deserialize values of specified property.
`Object` `deserializeWithType(JsonParser p, DeserializationContext ctxt, TypeDeserializer typeDeserializer)` Base implementation that does not assume specific type inclusion mechanism.
`static JsonDeserializer<?>` `forType(Class<?> rawType)`
`protected T` `handleNonArray(JsonParser p, DeserializationContext ctxt)`
`protected abstract T` `handleSingleElementUnwrapped(JsonParser p, DeserializationContext ctxt)`
`protected abstract PrimitiveArrayDeserializers<?>` `withResolved(Boolean unwrapSingle)`

### Methods inherited from class com.fasterxml.jackson.databind.deser.std.StdDeserializer

`_coerceIntegral, _deserializeFromEmpty, _failDoubleToIntCoercion, _hasTextualNull, _isIntNumber, _isNaN, _isNegInf, _isPosInf, _parseBoolean, _parseBooleanFromOther, _parseBooleanPrimitive, _parseByte, _parseDate, _parseDate, _parseDouble, _parseDoublePrimitive, _parseFloat, _parseFloatPrimitive, _parseInteger, _parseIntPrimitive, _parseLong, _parseLongPrimitive, _parseShort, _parseShortPrimitive, _parseString, findConvertingContentDeserializer, findDeserializer, findFormatFeature, findFormatOverrides, getValueClass, getValueType, handledType, handleMissingEndArrayForSingle, handleUnknownProperty, isDefaultDeserializer, isDefaultKeyDeserializer, parseDouble`

### Methods inherited from class com.fasterxml.jackson.databind.JsonDeserializer

`deserialize, deserialize, findBackReference, getDelegatee, getEmptyValue, getEmptyValue, getKnownPropertyNames, getNullValue, getNullValue, getObjectIdReader, isCachable, replaceDelegatee, unwrappingDeserializer`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### _unwrapSingle

    protected final Boolean _unwrapSingle

Specific override for this instance (from proper, or global per-type overrides) to indicate whether single value may be taken to mean an unwrapped one-element array or not. If null, left to global defaults.

Since:
  2.7

### Constructor Detail

#### PrimitiveArrayDeserializers

    protected PrimitiveArrayDeserializers(Class<T> cls)

#### PrimitiveArrayDeserializers

    protected PrimitiveArrayDeserializers(PrimitiveArrayDeserializers<?> base,
                               Boolean unwrapSingle)

Since:
  2.7

### Method Detail

#### forType

    public static JsonDeserializer<?> forType(Class<?> rawType)

#### withResolved

    protected abstract PrimitiveArrayDeserializers<?> withResolved(Boolean unwrapSingle)

Since:
  2.7

#### createContextual

    public JsonDeserializer<?> createContextual(DeserializationContext ctxt,
                                       BeanProperty property)
                                         throws JsonMappingException

Description copied from interface: `ContextualDeserializer`
Method called to see if a different (or differently configured) deserializer is needed to deserialize values of specified property. Note that instance that this method is called on is typically shared one and as a result method should NOT modify this instance but rather construct and return a new instance. This instance should only be returned as-is, in case it is already suitable for use.

Specified by:
  `createContextual` in interface `ContextualDeserializer`
Parameters:
  `ctxt` - Deserialization context to access configuration, additional deserializers that may be needed by this deserializer
  `property` - Method, field or constructor parameter that represents the property (and is used to assign deserialized value). Should be available; but there may be cases where caller can not provide it and null is passed instead (in which case impls usually pass 'this' deserializer as is)
Returns:
  Deserializer to use for deserializing values of specified property; may be this instance or a new instance.
Throws:
  `JsonMappingException`

#### deserializeWithType

    public Object deserializeWithType(JsonParser p,
                             DeserializationContext ctxt,
                             TypeDeserializer typeDeserializer)
                               throws IOException

Description copied from class: `StdDeserializer`
Base implementation that does not assume specific type inclusion mechanism. Sub-classes are expected to override this method if they are to handle type information.

Overrides:
  `deserializeWithType` in class `StdDeserializer<T>`
  `typeDeserializer` - Deserializer to use for handling type information
Throws:
  `IOException`

#### handleNonArray

    protected T handleNonArray(JsonParser p,
                   DeserializationContext ctxt)
                        throws IOException

Throws:
  `IOException`

#### handleSingleElementUnwrapped

    protected abstract T handleSingleElementUnwrapped(JsonParser p,
                                 DeserializationContext ctxt)
                                               throws IOException

Throws:
  `IOException`