Package com.fasterxml.jackson.jr.ob.api
Class ReaderWriterProvider.Pair
- java.lang.Object
-
- com.fasterxml.jackson.jr.ob.api.ReaderWriterProvider
-
- com.fasterxml.jackson.jr.ob.api.ReaderWriterProvider.Pair
-
- Enclosing class:
- ReaderWriterProvider
public static class ReaderWriterProvider.Pair extends ReaderWriterProvider
Implementation that allows chaining of two providers, one (first) with higher precedence than the other (second).- Since:
- 2.11
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.fasterxml.jackson.jr.ob.api.ReaderWriterProvider
ReaderWriterProvider.Pair
-
-
Field Summary
Fields Modifier and Type Field Description protected ReaderWriterProvider
_primary
protected ReaderWriterProvider
_secondary
-
Constructor Summary
Constructors Modifier Constructor Description protected
Pair(ReaderWriterProvider p, ReaderWriterProvider s)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ValueReader
findCollectionReader(JSONReader ctxt, java.lang.Class<?> type, ResolvedType valueType, ValueReader readerForValues)
ValueReader
findMapReader(JSONReader ctxt, java.lang.Class<?> type, ResolvedType valueType, ValueReader readerForValues)
ValueReader
findValueReader(JSONReader ctxt, java.lang.Class<?> type)
Method called to find custom reader for given type that is NOT one of special container types (Collection
,Map
): typically value is a scalar, Bean or Enum.ValueWriter
findValueWriter(JSONWriter ctxt, java.lang.Class<?> type)
static ReaderWriterProvider
of(ReaderWriterProvider primary, ReaderWriterProvider secondary)
Factory method for "combining" given 2 providers so that if neither isnull
, aReaderWriterProvider.Pair
is constructed; otherwise if one is non-null, that provider is returned; or if both arenull
s,null
is returned.
-
-
-
Field Detail
-
_primary
protected final ReaderWriterProvider _primary
-
_secondary
protected final ReaderWriterProvider _secondary
-
-
Constructor Detail
-
Pair
protected Pair(ReaderWriterProvider p, ReaderWriterProvider s)
-
-
Method Detail
-
of
public static ReaderWriterProvider of(ReaderWriterProvider primary, ReaderWriterProvider secondary)
Factory method for "combining" given 2 providers so that if neither isnull
, aReaderWriterProvider.Pair
is constructed; otherwise if one is non-null, that provider is returned; or if both arenull
s,null
is returned.- Parameters:
primary
- Primary providersecondary
- Secondary provider- Returns:
- Provider instance either constructed (2 non-null providers), or non-null provider
given as-is, or, if both nulls,
null
.
-
findValueReader
public ValueReader findValueReader(JSONReader ctxt, java.lang.Class<?> type)
Description copied from class:ReaderWriterProvider
Method called to find custom reader for given type that is NOT one of special container types (Collection
,Map
): typically value is a scalar, Bean or Enum.- Overrides:
findValueReader
in classReaderWriterProvider
- Parameters:
ctxt
- context object that may be needed for resolving dependant readerstype
- Raw type of bean to find reader for
-
findCollectionReader
public ValueReader findCollectionReader(JSONReader ctxt, java.lang.Class<?> type, ResolvedType valueType, ValueReader readerForValues)
- Overrides:
findCollectionReader
in classReaderWriterProvider
-
findMapReader
public ValueReader findMapReader(JSONReader ctxt, java.lang.Class<?> type, ResolvedType valueType, ValueReader readerForValues)
- Overrides:
findMapReader
in classReaderWriterProvider
-
findValueWriter
public ValueWriter findValueWriter(JSONWriter ctxt, java.lang.Class<?> type)
- Overrides:
findValueWriter
in classReaderWriterProvider
-
-