- java.lang.Object
-
- org.apache.johnzon.mapper.MapperConfig
-
- All Implemented Interfaces:
java.lang.Cloneable
public class MapperConfig extends java.lang.Object implements java.lang.CloneableContains internal configuration for all the mapper stuff. It needs to be immutable and 100% runtime oriented.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceMapperConfig.CustomEnumConverter<A>
-
Field Summary
Fields Modifier and Type Field Description private AccessModeaccessModeprivate LazyConverterMapadaptersprivate java.util.Comparator<java.lang.String>attributeOrderprivate booleancloseprivate java.lang.BooleandeduplicateObjectsprivate java.util.function.Predicate<java.lang.Class<?>>deserializationPredicateprivate java.lang.Stringdiscriminatorprivate java.util.function.Function<java.lang.Class<?>,java.lang.String>discriminatorMapperprivate java.nio.charset.Charsetencodingprivate java.util.function.Function<java.lang.Class<?>,MapperConfig.CustomEnumConverter<?>>enumConverterFactoryprivate booleanfailOnUnknownprivate java.util.Map<java.lang.Class<?>,java.lang.Class<?>>interfaceImplementationMappingprivate java.util.function.Function<MapperConfig,Mappings>mappingsFactoryprivate intmaxBigDecimalScaleprivate static ObjectConverter.CodecNO_CONVERTERprivate java.util.Collection<java.lang.reflect.Type>noGeneratorAdapterTypesprivate java.util.Collection<java.lang.reflect.Type>noParserAdapterTypesprivate java.util.Map<java.lang.Class<?>,ObjectConverter.Reader<?>>objectConverterReaderCacheprivate java.util.Map<java.lang.Class<?>,ObjectConverter.Reader<?>>objectConverterReadersprivate java.util.Map<java.lang.Class<?>,ObjectConverter.Writer<?>>objectConverterWriterCacheprivate java.util.Map<java.lang.Class<?>,ObjectConverter.Writer<?>>objectConverterWritersprivate booleanreadAttributeBeforeWriteprivate java.util.concurrent.ConcurrentMap<Adapter<?,?>,AdapterKey>reverseAdaptersprivate java.util.function.Predicate<java.lang.Class<?>>serializationPredicateprivate SerializeValueFilterserializeValueFilterprivate booleanskipEmptyArrayprivate booleanskipNullprivate SnippetFactorysnippetprivate booleansupportEnumMapDeserializationprivate booleantreatByteArrayAsBase64private booleantreatByteArrayAsBase64URLprivate java.util.function.Function<java.lang.String,java.lang.Class<?>>typeLoaderprivate booleanuseBigDecimalForFloatsprivate booleanuseBigDecimalForObjectNumbersprivate booleanuseJsRangeprivate intversion
-
Constructor Summary
Constructors Constructor Description MapperConfig(LazyConverterMap adapters, java.util.Map<java.lang.Class<?>,ObjectConverter.Writer<?>> objectConverterWriters, java.util.Map<java.lang.Class<?>,ObjectConverter.Reader<?>> objectConverterReaders, int version, boolean close, boolean skipNull, boolean skipEmptyArray, boolean treatByteArrayAsBase64, boolean treatByteArrayAsBase64URL, boolean readAttributeBeforeWrite, AccessMode accessMode, java.nio.charset.Charset encoding, java.util.Comparator<java.lang.String> attributeOrder, boolean failOnUnknown, SerializeValueFilter serializeValueFilter, boolean useBigDecimalForFloats, java.lang.Boolean deduplicateObjects, java.util.Map<java.lang.Class<?>,java.lang.Class<?>> interfaceImplementationMapping, boolean useJsRange, boolean useBigDecimalForObjectNumbers, int maxBigDecimalScale, boolean supportEnumMapDeserialization, java.util.function.Function<java.lang.String,java.lang.Class<?>> typeLoader, java.util.function.Function<java.lang.Class<?>,java.lang.String> discriminatorMapper, java.lang.String discriminator, java.util.function.Predicate<java.lang.Class<?>> deserializationPredicate, java.util.function.Predicate<java.lang.Class<?>> serializationPredicate, java.util.function.Function<java.lang.Class<?>,MapperConfig.CustomEnumConverter<?>> enumConverterFactory)Deprecated.MapperConfig(LazyConverterMap adapters, java.util.Map<java.lang.Class<?>,ObjectConverter.Writer<?>> objectConverterWriters, java.util.Map<java.lang.Class<?>,ObjectConverter.Reader<?>> objectConverterReaders, int version, boolean close, boolean skipNull, boolean skipEmptyArray, boolean treatByteArrayAsBase64, boolean treatByteArrayAsBase64URL, boolean readAttributeBeforeWrite, AccessMode accessMode, java.nio.charset.Charset encoding, java.util.Comparator<java.lang.String> attributeOrder, boolean failOnUnknown, SerializeValueFilter serializeValueFilter, boolean useBigDecimalForFloats, java.lang.Boolean deduplicateObjects, java.util.Map<java.lang.Class<?>,java.lang.Class<?>> interfaceImplementationMapping, boolean useJsRange, boolean useBigDecimalForObjectNumbers, int maxBigDecimalScale, boolean supportEnumMapDeserialization, java.util.function.Function<java.lang.String,java.lang.Class<?>> typeLoader, java.util.function.Function<java.lang.Class<?>,java.lang.String> discriminatorMapper, java.lang.String discriminator, java.util.function.Predicate<java.lang.Class<?>> deserializationPredicate, java.util.function.Predicate<java.lang.Class<?>> serializationPredicate, java.util.function.Function<java.lang.Class<?>,MapperConfig.CustomEnumConverter<?>> enumConverterFactory, SnippetFactory snippet, java.util.function.Function<MapperConfig,Mappings> mappingsFactory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AdapterfindAdapter(java.lang.reflect.Type aClass)private <T> TfindObjectConverter(java.lang.Class clazz, java.util.Map<java.lang.Class<?>,T> from, java.util.Map<java.lang.Class<?>,T> cache)ObjectConverter.ReaderfindObjectConverterReader(java.lang.Class clazz)Search for anObjectConverterfor the given class.ObjectConverter.WriterfindObjectConverterWriter(java.lang.Class clazz)AccessModegetAccessMode()LazyConverterMapgetAdapters()java.util.Comparator<java.lang.String>getAttributeOrder()java.util.function.Predicate<java.lang.Class<?>>getDeserializationPredicate()java.lang.StringgetDiscriminator()java.util.function.Function<java.lang.Class<?>,java.lang.String>getDiscriminatorMapper()java.nio.charset.CharsetgetEncoding()java.util.function.Function<java.lang.Class<?>,MapperConfig.CustomEnumConverter<?>>getEnumConverterFactory()java.util.Map<java.lang.Class<?>,java.lang.Class<?>>getInterfaceImplementationMapping()java.util.function.Function<MapperConfig,Mappings>getMappingsFactory()intgetMaxBigDecimalScale()java.util.Collection<java.lang.reflect.Type>getNoGeneratorAdapterTypes()java.util.Collection<java.lang.reflect.Type>getNoParserAdapterTypes()java.util.Map<java.lang.Class<?>,ObjectConverter.Reader<?>>getObjectConverterReaders()java.util.Map<java.lang.Class<?>,ObjectConverter.Writer<?>>getObjectConverterWriters()java.util.concurrent.ConcurrentMap<Adapter<?,?>,AdapterKey>getReverseAdapters()java.util.function.Predicate<java.lang.Class<?>>getSerializationPredicate()SerializeValueFiltergetSerializeValueFilter()SnippetFactorygetSnippet()java.util.function.Function<java.lang.String,java.lang.Class<?>>getTypeLoader()intgetVersion()booleanisClose()booleanisDeduplicateObjects()booleanisFailOnUnknown()booleanisReadAttributeBeforeWrite()booleanisSkipEmptyArray()booleanisSkipNull()booleanisSupportEnumContainerDeserialization()booleanisTreatByteArrayAsBase64()booleanisTreatByteArrayAsBase64URL()booleanisUseBigDecimalForFloats()booleanisUseBigDecimalForObjectNumbers()booleanisUseJsRange()
-
-
-
Field Detail
-
NO_CONVERTER
private static final ObjectConverter.Codec NO_CONVERTER
-
version
private final int version
-
useJsRange
private final boolean useJsRange
-
close
private final boolean close
-
skipNull
private final boolean skipNull
-
skipEmptyArray
private final boolean skipEmptyArray
-
treatByteArrayAsBase64
private final boolean treatByteArrayAsBase64
-
treatByteArrayAsBase64URL
private final boolean treatByteArrayAsBase64URL
-
readAttributeBeforeWrite
private final boolean readAttributeBeforeWrite
-
supportEnumMapDeserialization
private final boolean supportEnumMapDeserialization
-
accessMode
private final AccessMode accessMode
-
encoding
private final java.nio.charset.Charset encoding
-
adapters
private final LazyConverterMap adapters
-
reverseAdapters
private final java.util.concurrent.ConcurrentMap<Adapter<?,?>,AdapterKey> reverseAdapters
-
objectConverterWriters
private final java.util.Map<java.lang.Class<?>,ObjectConverter.Writer<?>> objectConverterWriters
-
objectConverterReaders
private final java.util.Map<java.lang.Class<?>,ObjectConverter.Reader<?>> objectConverterReaders
-
attributeOrder
private final java.util.Comparator<java.lang.String> attributeOrder
-
failOnUnknown
private final boolean failOnUnknown
-
serializeValueFilter
private final SerializeValueFilter serializeValueFilter
-
useBigDecimalForFloats
private final boolean useBigDecimalForFloats
-
deduplicateObjects
private final java.lang.Boolean deduplicateObjects
-
interfaceImplementationMapping
private final java.util.Map<java.lang.Class<?>,java.lang.Class<?>> interfaceImplementationMapping
-
useBigDecimalForObjectNumbers
private final boolean useBigDecimalForObjectNumbers
-
maxBigDecimalScale
private int maxBigDecimalScale
-
typeLoader
private final java.util.function.Function<java.lang.String,java.lang.Class<?>> typeLoader
-
discriminatorMapper
private final java.util.function.Function<java.lang.Class<?>,java.lang.String> discriminatorMapper
-
serializationPredicate
private final java.util.function.Predicate<java.lang.Class<?>> serializationPredicate
-
deserializationPredicate
private final java.util.function.Predicate<java.lang.Class<?>> deserializationPredicate
-
discriminator
private final java.lang.String discriminator
-
objectConverterWriterCache
private final java.util.Map<java.lang.Class<?>,ObjectConverter.Writer<?>> objectConverterWriterCache
-
objectConverterReaderCache
private final java.util.Map<java.lang.Class<?>,ObjectConverter.Reader<?>> objectConverterReaderCache
-
noParserAdapterTypes
private final java.util.Collection<java.lang.reflect.Type> noParserAdapterTypes
-
noGeneratorAdapterTypes
private final java.util.Collection<java.lang.reflect.Type> noGeneratorAdapterTypes
-
enumConverterFactory
private final java.util.function.Function<java.lang.Class<?>,MapperConfig.CustomEnumConverter<?>> enumConverterFactory
-
snippet
private final SnippetFactory snippet
-
mappingsFactory
private final java.util.function.Function<MapperConfig,Mappings> mappingsFactory
-
-
Constructor Detail
-
MapperConfig
@Deprecated public MapperConfig(LazyConverterMap adapters, java.util.Map<java.lang.Class<?>,ObjectConverter.Writer<?>> objectConverterWriters, java.util.Map<java.lang.Class<?>,ObjectConverter.Reader<?>> objectConverterReaders, int version, boolean close, boolean skipNull, boolean skipEmptyArray, boolean treatByteArrayAsBase64, boolean treatByteArrayAsBase64URL, boolean readAttributeBeforeWrite, AccessMode accessMode, java.nio.charset.Charset encoding, java.util.Comparator<java.lang.String> attributeOrder, boolean failOnUnknown, SerializeValueFilter serializeValueFilter, boolean useBigDecimalForFloats, java.lang.Boolean deduplicateObjects, java.util.Map<java.lang.Class<?>,java.lang.Class<?>> interfaceImplementationMapping, boolean useJsRange, boolean useBigDecimalForObjectNumbers, int maxBigDecimalScale, boolean supportEnumMapDeserialization, java.util.function.Function<java.lang.String,java.lang.Class<?>> typeLoader, java.util.function.Function<java.lang.Class<?>,java.lang.String> discriminatorMapper, java.lang.String discriminator, java.util.function.Predicate<java.lang.Class<?>> deserializationPredicate, java.util.function.Predicate<java.lang.Class<?>> serializationPredicate, java.util.function.Function<java.lang.Class<?>,MapperConfig.CustomEnumConverter<?>> enumConverterFactory)
Deprecated.
-
MapperConfig
public MapperConfig(LazyConverterMap adapters, java.util.Map<java.lang.Class<?>,ObjectConverter.Writer<?>> objectConverterWriters, java.util.Map<java.lang.Class<?>,ObjectConverter.Reader<?>> objectConverterReaders, int version, boolean close, boolean skipNull, boolean skipEmptyArray, boolean treatByteArrayAsBase64, boolean treatByteArrayAsBase64URL, boolean readAttributeBeforeWrite, AccessMode accessMode, java.nio.charset.Charset encoding, java.util.Comparator<java.lang.String> attributeOrder, boolean failOnUnknown, SerializeValueFilter serializeValueFilter, boolean useBigDecimalForFloats, java.lang.Boolean deduplicateObjects, java.util.Map<java.lang.Class<?>,java.lang.Class<?>> interfaceImplementationMapping, boolean useJsRange, boolean useBigDecimalForObjectNumbers, int maxBigDecimalScale, boolean supportEnumMapDeserialization, java.util.function.Function<java.lang.String,java.lang.Class<?>> typeLoader, java.util.function.Function<java.lang.Class<?>,java.lang.String> discriminatorMapper, java.lang.String discriminator, java.util.function.Predicate<java.lang.Class<?>> deserializationPredicate, java.util.function.Predicate<java.lang.Class<?>> serializationPredicate, java.util.function.Function<java.lang.Class<?>,MapperConfig.CustomEnumConverter<?>> enumConverterFactory, SnippetFactory snippet, java.util.function.Function<MapperConfig,Mappings> mappingsFactory)
-
-
Method Detail
-
getSnippet
public SnippetFactory getSnippet()
-
getEnumConverterFactory
public java.util.function.Function<java.lang.Class<?>,MapperConfig.CustomEnumConverter<?>> getEnumConverterFactory()
-
getNoParserAdapterTypes
public java.util.Collection<java.lang.reflect.Type> getNoParserAdapterTypes()
-
getNoGeneratorAdapterTypes
public java.util.Collection<java.lang.reflect.Type> getNoGeneratorAdapterTypes()
-
getTypeLoader
public java.util.function.Function<java.lang.String,java.lang.Class<?>> getTypeLoader()
-
getDiscriminatorMapper
public java.util.function.Function<java.lang.Class<?>,java.lang.String> getDiscriminatorMapper()
-
getDeserializationPredicate
public java.util.function.Predicate<java.lang.Class<?>> getDeserializationPredicate()
-
getSerializationPredicate
public java.util.function.Predicate<java.lang.Class<?>> getSerializationPredicate()
-
getDiscriminator
public java.lang.String getDiscriminator()
-
isUseBigDecimalForObjectNumbers
public boolean isUseBigDecimalForObjectNumbers()
-
getMaxBigDecimalScale
public int getMaxBigDecimalScale()
-
isUseJsRange
public boolean isUseJsRange()
-
getInterfaceImplementationMapping
public java.util.Map<java.lang.Class<?>,java.lang.Class<?>> getInterfaceImplementationMapping()
-
getSerializeValueFilter
public SerializeValueFilter getSerializeValueFilter()
-
findAdapter
public Adapter findAdapter(java.lang.reflect.Type aClass)
-
findObjectConverterReader
public ObjectConverter.Reader findObjectConverterReader(java.lang.Class clazz)
Search for anObjectConverterfor the given class. If noObjectConverterwas found for the specific class, the whole type hierarchy will be scanned for a matchingObjectConverter. In case the given class implements more than on interfaces and for at least two we have configured anObjectConvertertheObjectConverterfor the first interface we get will be taken.- Parameters:
clazz- theClass- Returns:
- the found
ObjectConverterornullif noObjectConverterhas been found - Throws:
java.lang.IllegalArgumentException- ifclazzisnull
-
findObjectConverterWriter
public ObjectConverter.Writer findObjectConverterWriter(java.lang.Class clazz)
-
findObjectConverter
private <T> T findObjectConverter(java.lang.Class clazz, java.util.Map<java.lang.Class<?>,T> from, java.util.Map<java.lang.Class<?>,T> cache)
-
isFailOnUnknown
public boolean isFailOnUnknown()
-
getVersion
public int getVersion()
-
isClose
public boolean isClose()
-
isSkipNull
public boolean isSkipNull()
-
isSkipEmptyArray
public boolean isSkipEmptyArray()
-
isTreatByteArrayAsBase64
public boolean isTreatByteArrayAsBase64()
-
isTreatByteArrayAsBase64URL
public boolean isTreatByteArrayAsBase64URL()
-
isReadAttributeBeforeWrite
public boolean isReadAttributeBeforeWrite()
-
getAccessMode
public AccessMode getAccessMode()
-
getEncoding
public java.nio.charset.Charset getEncoding()
-
getAdapters
public LazyConverterMap getAdapters()
-
getReverseAdapters
public java.util.concurrent.ConcurrentMap<Adapter<?,?>,AdapterKey> getReverseAdapters()
-
getObjectConverterWriters
public java.util.Map<java.lang.Class<?>,ObjectConverter.Writer<?>> getObjectConverterWriters()
-
getObjectConverterReaders
public java.util.Map<java.lang.Class<?>,ObjectConverter.Reader<?>> getObjectConverterReaders()
-
getAttributeOrder
public java.util.Comparator<java.lang.String> getAttributeOrder()
-
isUseBigDecimalForFloats
public boolean isUseBigDecimalForFloats()
-
isDeduplicateObjects
public boolean isDeduplicateObjects()
-
isSupportEnumContainerDeserialization
public boolean isSupportEnumContainerDeserialization()
-
getMappingsFactory
public java.util.function.Function<MapperConfig,Mappings> getMappingsFactory()
-
-