Package com.fasterxml.jackson.datatype.jsr310.deser

# Class YearMonthDeserializer

java.lang.Object
com.fasterxml.jackson.databind.JsonDeserializer<T>
com.fasterxml.jackson.databind.deser.std.StdDeserializer<T>
com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer<T>
com.fasterxml.jackson.datatype.jsr310.deser.JSR310DateTimeDeserializerBase<YearMonth>
com.fasterxml.jackson.datatype.jsr310.deser.YearMonthDeserializer

All Implemented Interfaces:
  `com.fasterxml.jackson.databind.deser.ContextualDeserializer`, `com.fasterxml.jackson.databind.deser.NullValueProvider`, `com.fasterxml.jackson.databind.deser.ValueInstantiator.Gettable`, `Serializable`

public class YearMonthDeserializer extends JSR310DateTimeDeserializerBase<YearMonth>
Deserializer for Java 8 temporal `YearMonth`s.

Since:
  2.2.0
Author:
  Nick Williams
See Also:
  - Serialized Form

## Nested Class Summary

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

`com.fasterxml.jackson.databind.JsonDeserializer.None`

## Field Summary

Fields
Modifier and Type
Field
Description
`protected final boolean`
`_isLenient`
Flag that indicates what leniency setting is enabled for this deserializer (either due `JsonFormat.Shape` annotation on property or class, or due to per-type "config override", or from global settings): leniency/strictness has effect on accepting some non-default input value representations (such as integer values for dates).
`static final YearMonthDeserializer`
`INSTANCE`

### Fields inherited from class com.fasterxml.jackson.datatype.jsr310.deser.JSR310DateTimeDeserializerBase

`_formatter, _shape`

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

`_valueClass, _valueType, F_MASK_ACCEPT_ARRAYS, F_MASK_INT_COERCIONS`

## Constructor Summary

Constructors
Modifier
Constructor
Description
``
`YearMonthDeserializer()`
NOTE: only `public` so that use via annotations (see [modules-java8#202]) is possible
`protected`
`YearMonthDeserializer(YearMonthDeserializer base, Boolean leniency)`
Since 2.11
``
`YearMonthDeserializer(DateTimeFormatter formatter)`

## Method Summary

Modifier and Type
Method
Description
`protected YearMonth`
`_failForNotLenient(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt, com.fasterxml.jackson.core.JsonToken expToken)`
`protected YearMonth`
`_fromEmptyString(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt, String str)`
Replacement for `isLenient()` for specific case of deserialization from empty or blank String.
`protected YearMonth`
`_fromString(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt, String string0)`
`protected <R> R`
`_handleDateTimeException(com.fasterxml.jackson.databind.DeserializationContext context, DateTimeException e0, String value)`
`protected <R> R`
`_handleUnexpectedToken(com.fasterxml.jackson.databind.DeserializationContext context, com.fasterxml.jackson.core.JsonParser parser, com.fasterxml.jackson.core.JsonToken... expTypes)`
`protected <R> R`
`_handleUnexpectedToken(com.fasterxml.jackson.databind.DeserializationContext context, com.fasterxml.jackson.core.JsonParser parser, String message, Object... args)`
`protected boolean`
`_isValidTimestampString(String str)`
`protected DateTimeException`
`_peelDTE(DateTimeException e)`
Helper method used to peel off spurious wrappings of DateTimeException
`protected <BOGUS> BOGUS`
`_reportWrongToken(com.fasterxml.jackson.core.JsonParser parser, com.fasterxml.jackson.databind.DeserializationContext context, com.fasterxml.jackson.core.JsonToken... expTypes)`
`protected <BOGUS> BOGUS`
`_reportWrongToken(com.fasterxml.jackson.databind.DeserializationContext context, com.fasterxml.jackson.core.JsonToken exp, String unit)`
`YearMonth`
`deserialize(com.fasterxml.jackson.core.JsonParser parser, com.fasterxml.jackson.databind.DeserializationContext context)`
`Object`
`deserializeWithType(com.fasterxml.jackson.core.JsonParser parser, com.fasterxml.jackson.databind.DeserializationContext context, com.fasterxml.jackson.databind.jsontype.TypeDeserializer typeDeserializer)`
`protected boolean`
`isLenient()`
`com.fasterxml.jackson.databind.type.LogicalType`
`logicalType()`
`protected YearMonthDeserializer`
`withDateFormat(DateTimeFormatter dtf)`
`protected YearMonthDeserializer`
`withLeniency(Boolean leniency)`
`protected YearMonthDeserializer`
`withShape(com.fasterxml.jackson.annotation.JsonFormat.Shape shape)`

### Methods inherited from class com.fasterxml.jackson.datatype.jsr310.deser.JSR310DateTimeDeserializerBase

`_throwNoNumericTimestampNeedTimeZone, _withFormatOverrides, createContextual`

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

`deserialize, getEmptyAccessPattern, getNullAccessPattern, supportsUpdate`

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

`_byteOverflow, _checkBooleanToStringCoercion, _checkCoercionFail, _checkDoubleSpecialValue, _checkFloatSpecialValue, _checkFloatToIntCoercion, _checkFloatToStringCoercion, _checkFromStringCoercion, _checkFromStringCoercion, _checkIntToFloatCoercion, _checkIntToStringCoercion, _checkTextualNull, _checkToStringCoercion, _coerceBooleanFromInt, _coercedTypeDesc, _coerceEmptyString, _coerceIntegral, _coerceNullToken, _coerceTextualNull, _deserializeFromArray, _deserializeFromEmpty, _deserializeFromEmptyString, _deserializeFromString, _deserializeWrappedValue, _failDoubleToIntCoercion, _findCoercionFromBlankString, _findCoercionFromEmptyArray, _findCoercionFromEmptyString, _findNullProvider, _hasTextualNull, _intOverflow, _isBlank, _isEmptyOrTextualNull, _isFalse, _isIntNumber, _isNaN, _isNegInf, _isPosInf, _isTrue, _neitherNull, _nonNullNumber, _parseBoolean, _parseBooleanFromInt, _parseBooleanPrimitive, _parseBooleanPrimitive, _parseBytePrimitive, _parseDate, _parseDate, _parseDateFromArray, _parseDouble, _parseDouble, _parseDoublePrimitive, _parseDoublePrimitive, _parseDoublePrimitive, _parseFloatPrimitive, _parseFloatPrimitive, _parseFloatPrimitive, _parseInteger, _parseInteger, _parseIntPrimitive, _parseIntPrimitive, _parseLong, _parseLong, _parseLongPrimitive, _parseLongPrimitive, _parseShortPrimitive, _parseString, _parseString, _reportFailedNullCoerce, _shortOverflow, _verifyEndArrayForSingle, _verifyNullForPrimitive, _verifyNullForPrimitiveCoercion, _verifyNullForScalarCoercion, _verifyNumberForScalarCoercion, _verifyStringForScalarCoercion, findContentNullProvider, findContentNullStyle, findConvertingContentDeserializer, findDeserializer, findFormatFeature, findFormatOverrides, findValueNullProvider, getValueClass, getValueInstantiator, getValueType, getValueType, handledType, handleMissingEndArrayForSingle, handleNestedArrayForSingle, handleUnknownProperty, isDefaultDeserializer, isDefaultKeyDeserializer`

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

`deserializeWithType, findBackReference, getAbsentValue, 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 Details

### INSTANCE

public static final YearMonthDeserializer INSTANCE

### _isLenient

protected final boolean _isLenient
Flag that indicates what leniency setting is enabled for this deserializer (either due `JsonFormat.Shape` annotation on property or class, or due to per-type "config override", or from global settings): leniency/strictness has effect on accepting some non-default input value representations (such as integer values for dates).

Note that global default setting is for leniency to be enabled, for Jackson 2.x, and has to be explicitly change to force strict handling: this is to keep backwards compatibility with earlier versions.

Note that with 2.12 and later coercion settings are moving to `CoercionConfig`, instead of simple yes/no leniency setting.

Since:
  2.11

## Constructor Details

### YearMonthDeserializer

public YearMonthDeserializer()
NOTE: only `public` so that use via annotations (see [modules-java8#202]) is possible

### YearMonthDeserializer

public YearMonthDeserializer(DateTimeFormatter formatter)

### YearMonthDeserializer

protected YearMonthDeserializer(YearMonthDeserializer base, Boolean leniency)
Since 2.11

## Method Details

### withDateFormat

protected YearMonthDeserializer withDateFormat(DateTimeFormatter dtf)

Specified by:
  `withDateFormat` in class `JSR310DateTimeDeserializerBase<YearMonth>`

### withLeniency

protected YearMonthDeserializer withLeniency(Boolean leniency)

Specified by:
  `withLeniency` in class `JSR310DateTimeDeserializerBase<YearMonth>`

### withShape

protected YearMonthDeserializer withShape(com.fasterxml.jackson.annotation.JsonFormat.Shape shape)

Specified by:
  `withShape` in class `JSR310DateTimeDeserializerBase<YearMonth>`

### deserialize

public YearMonth deserialize(com.fasterxml.jackson.core.JsonParser parser, com.fasterxml.jackson.databind.DeserializationContext context) throws IOException

Specified by:
  `deserialize` in class `com.fasterxml.jackson.databind.JsonDeserializer<YearMonth>`
Throws:
  `IOException`

### _fromString

protected YearMonth _fromString(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt, String string0) throws IOException

Throws:
  `IOException`

### isLenient

protected boolean isLenient()

Returns:
  `true` if lenient handling is enabled; {code false} if not (strict mode)
Since:
  2.11

### _fromEmptyString

protected YearMonth _fromEmptyString(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt, String str) throws IOException
Replacement for `isLenient()` for specific case of deserialization from empty or blank String.

Throws:
  `IOException`
Since:
  2.12

### logicalType

public com.fasterxml.jackson.databind.type.LogicalType logicalType()

Overrides:
  `logicalType` in class `com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer<T>`

### deserializeWithType

public Object deserializeWithType(com.fasterxml.jackson.core.JsonParser parser, com.fasterxml.jackson.databind.DeserializationContext context, com.fasterxml.jackson.databind.jsontype.TypeDeserializer typeDeserializer) throws IOException

Overrides:
  `deserializeWithType` in class `com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer<T>`
Throws:
  `IOException`

### _isValidTimestampString

protected boolean _isValidTimestampString(String str)

### _reportWrongToken

protected <BOGUS> BOGUS _reportWrongToken(com.fasterxml.jackson.databind.DeserializationContext context, com.fasterxml.jackson.core.JsonToken exp, String unit) throws IOException

Throws:
  `IOException`

### _reportWrongToken

protected <BOGUS> BOGUS _reportWrongToken(com.fasterxml.jackson.core.JsonParser parser, com.fasterxml.jackson.databind.DeserializationContext context, com.fasterxml.jackson.core.JsonToken... expTypes) throws IOException

Throws:
  `IOException`

### _handleDateTimeException

protected <R> R _handleDateTimeException(com.fasterxml.jackson.databind.DeserializationContext context, DateTimeException e0, String value) throws com.fasterxml.jackson.databind.JsonMappingException

Throws:
  `com.fasterxml.jackson.databind.JsonMappingException`

### _handleUnexpectedToken

protected <R> R _handleUnexpectedToken(com.fasterxml.jackson.databind.DeserializationContext context, com.fasterxml.jackson.core.JsonParser parser, String message, Object... args) throws com.fasterxml.jackson.databind.JsonMappingException

Throws:
  `com.fasterxml.jackson.databind.JsonMappingException`

### _handleUnexpectedToken

protected <R> R _handleUnexpectedToken(com.fasterxml.jackson.databind.DeserializationContext context, com.fasterxml.jackson.core.JsonParser parser, com.fasterxml.jackson.core.JsonToken... expTypes) throws com.fasterxml.jackson.databind.JsonMappingException

Throws:
  `com.fasterxml.jackson.databind.JsonMappingException`

### _failForNotLenient

protected YearMonth _failForNotLenient(com.fasterxml.jackson.core.JsonParser p, com.fasterxml.jackson.databind.DeserializationContext ctxt, com.fasterxml.jackson.core.JsonToken expToken) throws IOException

Throws:
  `IOException`

### _peelDTE

protected DateTimeException _peelDTE(DateTimeException e)
Helper method used to peel off spurious wrappings of DateTimeException

Parameters:
  `e` - DateTimeException to peel
Returns:
  DateTimeException that does not have another DateTimeException as its cause.