- java.lang.Object
-
- org.apache.johnzon.mapper.MapperBuilder
-
public class MapperBuilder extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private AccessMode
accessMode
private java.lang.String
accessModeName
private LazyConverterMap
adapters
private java.util.Comparator<java.lang.String>
attributeOrder
private boolean
autoAdjustStringBuffers
private int
bufferSize
private java.lang.String
bufferStrategy
private jakarta.json.JsonBuilderFactory
builderFactory
private boolean
close
private java.util.Collection<java.io.Closeable>
closeables
private java.lang.Boolean
deduplicateObjects
private java.util.function.Predicate<java.lang.Class<?>>
deserializationPredicate
private java.lang.String
discriminator
private java.util.function.Function<java.lang.Class<?>,java.lang.String>
discriminatorMapper
private java.nio.charset.Charset
encoding
private java.util.function.Function<java.lang.Class<?>,MapperConfig.CustomEnumConverter<?>>
enumConverterFactory
private boolean
failOnUnknownProperties
private BaseAccessMode.FieldFilteringStrategy
fieldFilteringStrategy
private jakarta.json.stream.JsonGeneratorFactory
generatorFactory
private java.util.Map<java.lang.Class<?>,java.lang.String[]>
ignoredForFields
private java.util.Map<java.lang.Class<?>,java.lang.Class<?>>
interfaceImplementationMapping
private java.util.function.Function<MapperConfig,Mappings>
mappingsFactory
private int
maxBigDecimalScale
private int
maxSize
private java.util.Map<java.lang.Class<?>,ObjectConverter.Reader<?>>
objectConverterReaders
private java.util.Map<java.lang.Class<?>,ObjectConverter.Writer<?>>
objectConverterWriters
private boolean
pretty
private boolean
primitiveConverters
private jakarta.json.spi.JsonProvider
provider
private boolean
readAttributeBeforeWrite
private jakarta.json.JsonReaderFactory
readerFactory
private java.util.function.Predicate<java.lang.Class<?>>
serializationPredicate
private SerializeValueFilter
serializeValueFilter
private boolean
skipAccessModeWrapper
private boolean
skipEmptyArray
private boolean
skipNull
private int
snippetMaxLength
private boolean
supportConstructors
private boolean
supportEnumContainerDeserialization
private boolean
supportHiddenAccess
private boolean
supportsComments
private boolean
treatByteArrayAsBase64
private boolean
treatByteArrayAsBase64URL
private java.util.function.Function<java.lang.String,java.lang.Class<?>>
typeLoader
private boolean
useBigDecimalForFloats
private boolean
useBigDecimalForObjectNumbers
private boolean
useGetterForCollections
private boolean
useJsRange
private int
version
-
Constructor Summary
Constructors Constructor Description MapperBuilder()
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description MapperBuilder
addAdapter(java.lang.reflect.Type from, java.lang.reflect.Type to, Adapter<?,?> adapter)
MapperBuilder
addAdapter(Adapter<?,?> converter)
MapperBuilder
addCloseable(java.io.Closeable closeable)
MapperBuilder
addConverter(java.lang.reflect.Type clazz, Converter<?> converter)
Deprecated.<T> MapperBuilder
addObjectConverter(java.lang.Class<T> targetType, MapperConverter objectConverter)
MapperBuilder
addPropertyEditor(java.lang.Class<?> clazz, Converter<?> converter)
Deprecated.Mapper
build()
java.util.concurrent.ConcurrentHashMap<AdapterKey,Adapter<?,?>>
getAdapters()
MapperBuilder
setAccessMode(AccessMode mode)
MapperBuilder
setAccessModeFieldFilteringStrategy(BaseAccessMode.FieldFilteringStrategy strategy)
MapperBuilder
setAccessModeFieldFilteringStrategyName(java.lang.String mode)
MapperBuilder
setAccessModeName(java.lang.String mode)
MapperBuilder
setAdaptersDateTimeFormatter(java.time.format.DateTimeFormatter dateTimeFormatter)
MapperBuilder
setAdaptersDateTimeFormatterString(java.lang.String dateTimeFormatter)
MapperBuilder
setAttributeOrder(java.util.Comparator<java.lang.String> attributeOrder)
MapperBuilder
setAutoAdjustStringBuffers(boolean autoAdjustStringBuffers)
MapperBuilder
setBufferSize(int bufferSize)
MapperBuilder
setBufferStrategy(java.lang.String bufferStrategy)
MapperBuilder
setBuilderFactory(jakarta.json.JsonBuilderFactory builderFactory)
MapperBuilder
setDeduplicateObjects(java.lang.Boolean deduplicateObjects)
If any non-primitive Java Object gets serialised more than just one time, then we write a JsonPointer to the first occurrence instead.MapperBuilder
setDoCloseOnStreams(boolean doCloseOnStreams)
MapperBuilder
setEncoding(java.lang.String encoding)
void
setEnumConverterFactory(java.util.function.Function<java.lang.Class<?>,MapperConfig.CustomEnumConverter<?>> enumConverterFactory)
MapperBuilder
setFailOnUnknownProperties(boolean failOnUnknownProperties)
MapperBuilder
setGeneratorFactory(jakarta.json.stream.JsonGeneratorFactory generatorFactory)
MapperBuilder
setIgnoreFieldsForType(java.lang.Class<?> type, java.lang.String... fields)
MapperBuilder
setInterfaceImplementationMapping(java.util.Map<java.lang.Class<?>,java.lang.Class<?>> interfaceImplementationMapping)
MapperBuilder
setMappingsFactory(java.util.function.Function<MapperConfig,Mappings> mappingsFactory)
MapperBuilder
setMaxBigDecimalScale(int maxBigDecimalScale)
MapperBuilder
setMaxSize(int size)
MapperBuilder
setPolymorphicDeserializationPredicate(java.util.function.Predicate<java.lang.Class<?>> deserializationPredicate)
MapperBuilder
setPolymorphicDiscriminator(java.lang.String value)
MapperBuilder
setPolymorphicDiscriminatorMapper(java.util.function.Function<java.lang.Class<?>,java.lang.String> discriminatorMapper)
MapperBuilder
setPolymorphicSerializationPredicate(java.util.function.Predicate<java.lang.Class<?>> serializationPredicate)
MapperBuilder
setPolymorphicTypeLoader(java.util.function.Function<java.lang.String,java.lang.Class<?>> typeLoader)
MapperBuilder
setPretty(boolean pretty)
MapperBuilder
setPrimitiveConverters(boolean val)
MapperBuilder
setProvider(jakarta.json.spi.JsonProvider provider)
MapperBuilder
setReadAttributeBeforeWrite(boolean readAttributeBeforeWrite)
MapperBuilder
setReaderFactory(jakarta.json.JsonReaderFactory readerFactory)
MapperBuilder
setSerializeValueFilter(SerializeValueFilter serializeValueFilter)
MapperBuilder
setSkipAccessModeWrapper(boolean skipAccessModeWrapper)
MapperBuilder
setSkipEmptyArray(boolean skipEmptyArray)
MapperBuilder
setSkipNull(boolean skipNull)
MapperBuilder
setSnippetMaxLength(int snippetMaxLength)
MapperBuilder
setSupportConstructors(boolean supportConstructors)
MapperBuilder
setSupportEnumContainerDeserialization(boolean supportEnumContainerDeserialization)
MapperBuilder
setSupportGetterForCollections(boolean useGetterForCollections)
MapperBuilder
setSupportHiddenAccess(boolean supportHiddenAccess)
MapperBuilder
setSupportsComments(boolean supportsComments)
MapperBuilder
setTreatByteArrayAsBase64(boolean treatByteArrayAsBase64)
MapperBuilder
setTreatByteArrayAsBase64URL(boolean treatByteArrayAsBase64URL)
MapperBuilder
setUseBigDecimalForFloats(boolean useBigDecimalForFloats)
MapperBuilder
setUseBigDecimalForObjectNumbers(boolean value)
MapperBuilder
setUseBigDecimalStringAdapter(boolean convertBigDecimalToString)
MapperBuilder
setUseBigIntegerStringAdapter(boolean convertBigIntegerToString)
MapperBuilder
setUseJsRange(boolean value)
MapperBuilder
setUseShortISO8601Format(boolean useShortISO8601Format)
MapperBuilder
setVersion(int version)
-
-
-
Field Detail
-
readerFactory
private jakarta.json.JsonReaderFactory readerFactory
-
generatorFactory
private jakarta.json.stream.JsonGeneratorFactory generatorFactory
-
provider
private jakarta.json.spi.JsonProvider provider
-
builderFactory
private jakarta.json.JsonBuilderFactory builderFactory
-
supportHiddenAccess
private boolean supportHiddenAccess
-
maxSize
private int maxSize
-
bufferSize
private int bufferSize
-
bufferStrategy
private java.lang.String bufferStrategy
-
autoAdjustStringBuffers
private boolean autoAdjustStringBuffers
-
attributeOrder
private java.util.Comparator<java.lang.String> attributeOrder
-
supportConstructors
private boolean supportConstructors
-
useGetterForCollections
private boolean useGetterForCollections
-
accessModeName
private java.lang.String accessModeName
-
pretty
private boolean pretty
-
closeables
private final java.util.Collection<java.io.Closeable> closeables
-
version
private int version
-
snippetMaxLength
private int snippetMaxLength
-
close
private boolean close
-
skipNull
private boolean skipNull
-
skipEmptyArray
private boolean skipEmptyArray
-
supportsComments
private boolean supportsComments
-
treatByteArrayAsBase64
private boolean treatByteArrayAsBase64
-
treatByteArrayAsBase64URL
private boolean treatByteArrayAsBase64URL
-
readAttributeBeforeWrite
private boolean readAttributeBeforeWrite
-
accessMode
private AccessMode accessMode
-
encoding
private java.nio.charset.Charset encoding
-
adapters
private LazyConverterMap adapters
-
objectConverterReaders
private java.util.Map<java.lang.Class<?>,ObjectConverter.Reader<?>> objectConverterReaders
-
objectConverterWriters
private java.util.Map<java.lang.Class<?>,ObjectConverter.Writer<?>> objectConverterWriters
-
ignoredForFields
private java.util.Map<java.lang.Class<?>,java.lang.String[]> ignoredForFields
-
interfaceImplementationMapping
private java.util.Map<java.lang.Class<?>,java.lang.Class<?>> interfaceImplementationMapping
-
fieldFilteringStrategy
private BaseAccessMode.FieldFilteringStrategy fieldFilteringStrategy
-
primitiveConverters
private boolean primitiveConverters
-
failOnUnknownProperties
private boolean failOnUnknownProperties
-
serializeValueFilter
private SerializeValueFilter serializeValueFilter
-
useBigDecimalForFloats
private boolean useBigDecimalForFloats
-
deduplicateObjects
private java.lang.Boolean deduplicateObjects
-
useJsRange
private boolean useJsRange
-
useBigDecimalForObjectNumbers
private boolean useBigDecimalForObjectNumbers
-
maxBigDecimalScale
private int maxBigDecimalScale
-
supportEnumContainerDeserialization
private boolean supportEnumContainerDeserialization
-
enumConverterFactory
private java.util.function.Function<java.lang.Class<?>,MapperConfig.CustomEnumConverter<?>> enumConverterFactory
-
skipAccessModeWrapper
private boolean skipAccessModeWrapper
-
mappingsFactory
private java.util.function.Function<MapperConfig,Mappings> mappingsFactory
-
typeLoader
private java.util.function.Function<java.lang.String,java.lang.Class<?>> typeLoader
-
discriminatorMapper
private java.util.function.Function<java.lang.Class<?>,java.lang.String> discriminatorMapper
-
deserializationPredicate
private java.util.function.Predicate<java.lang.Class<?>> deserializationPredicate
-
serializationPredicate
private java.util.function.Predicate<java.lang.Class<?>> serializationPredicate
-
discriminator
private java.lang.String discriminator
-
-
Method Detail
-
build
public Mapper build()
-
setEnumConverterFactory
public void setEnumConverterFactory(java.util.function.Function<java.lang.Class<?>,MapperConfig.CustomEnumConverter<?>> enumConverterFactory)
-
getAdapters
public java.util.concurrent.ConcurrentHashMap<AdapterKey,Adapter<?,?>> getAdapters()
-
setSnippetMaxLength
public MapperBuilder setSnippetMaxLength(int snippetMaxLength)
-
setUseShortISO8601Format
public MapperBuilder setUseShortISO8601Format(boolean useShortISO8601Format)
-
setAdaptersDateTimeFormatter
public MapperBuilder setAdaptersDateTimeFormatter(java.time.format.DateTimeFormatter dateTimeFormatter)
-
setUseBigIntegerStringAdapter
public MapperBuilder setUseBigIntegerStringAdapter(boolean convertBigIntegerToString)
-
setUseBigDecimalStringAdapter
public MapperBuilder setUseBigDecimalStringAdapter(boolean convertBigDecimalToString)
-
setAdaptersDateTimeFormatterString
public MapperBuilder setAdaptersDateTimeFormatterString(java.lang.String dateTimeFormatter)
-
setInterfaceImplementationMapping
public MapperBuilder setInterfaceImplementationMapping(java.util.Map<java.lang.Class<?>,java.lang.Class<?>> interfaceImplementationMapping)
-
setFailOnUnknownProperties
public MapperBuilder setFailOnUnknownProperties(boolean failOnUnknownProperties)
-
addCloseable
public MapperBuilder addCloseable(java.io.Closeable closeable)
-
setIgnoreFieldsForType
public MapperBuilder setIgnoreFieldsForType(java.lang.Class<?> type, java.lang.String... fields)
-
setSupportGetterForCollections
public MapperBuilder setSupportGetterForCollections(boolean useGetterForCollections)
-
setSupportsComments
public MapperBuilder setSupportsComments(boolean supportsComments)
-
setPretty
public MapperBuilder setPretty(boolean pretty)
-
setBufferSize
public MapperBuilder setBufferSize(int bufferSize)
-
setBufferStrategy
public MapperBuilder setBufferStrategy(java.lang.String bufferStrategy)
-
setMaxSize
public MapperBuilder setMaxSize(int size)
-
setAccessMode
public MapperBuilder setAccessMode(AccessMode mode)
-
setAccessModeName
public MapperBuilder setAccessModeName(java.lang.String mode)
-
setAccessModeFieldFilteringStrategy
public MapperBuilder setAccessModeFieldFilteringStrategy(BaseAccessMode.FieldFilteringStrategy strategy)
-
setAccessModeFieldFilteringStrategyName
public MapperBuilder setAccessModeFieldFilteringStrategyName(java.lang.String mode)
-
setSupportHiddenAccess
public MapperBuilder setSupportHiddenAccess(boolean supportHiddenAccess)
-
setAttributeOrder
public MapperBuilder setAttributeOrder(java.util.Comparator<java.lang.String> attributeOrder)
-
setReaderFactory
public MapperBuilder setReaderFactory(jakarta.json.JsonReaderFactory readerFactory)
-
setGeneratorFactory
public MapperBuilder setGeneratorFactory(jakarta.json.stream.JsonGeneratorFactory generatorFactory)
-
setProvider
public MapperBuilder setProvider(jakarta.json.spi.JsonProvider provider)
-
setBuilderFactory
public MapperBuilder setBuilderFactory(jakarta.json.JsonBuilderFactory builderFactory)
-
setDoCloseOnStreams
public MapperBuilder setDoCloseOnStreams(boolean doCloseOnStreams)
-
addPropertyEditor
@Deprecated public MapperBuilder addPropertyEditor(java.lang.Class<?> clazz, Converter<?> converter)
Deprecated.
-
addConverter
@Deprecated public MapperBuilder addConverter(java.lang.reflect.Type clazz, Converter<?> converter)
Deprecated.
-
addAdapter
public MapperBuilder addAdapter(java.lang.reflect.Type from, java.lang.reflect.Type to, Adapter<?,?> adapter)
-
addAdapter
public MapperBuilder addAdapter(Adapter<?,?> converter)
-
setVersion
public MapperBuilder setVersion(int version)
-
setSkipNull
public MapperBuilder setSkipNull(boolean skipNull)
-
setSkipEmptyArray
public MapperBuilder setSkipEmptyArray(boolean skipEmptyArray)
-
setTreatByteArrayAsBase64
public MapperBuilder setTreatByteArrayAsBase64(boolean treatByteArrayAsBase64)
-
setTreatByteArrayAsBase64URL
public MapperBuilder setTreatByteArrayAsBase64URL(boolean treatByteArrayAsBase64URL)
-
setSupportConstructors
public MapperBuilder setSupportConstructors(boolean supportConstructors)
-
setEncoding
public MapperBuilder setEncoding(java.lang.String encoding)
-
setReadAttributeBeforeWrite
public MapperBuilder setReadAttributeBeforeWrite(boolean readAttributeBeforeWrite)
-
addObjectConverter
public <T> MapperBuilder addObjectConverter(java.lang.Class<T> targetType, MapperConverter objectConverter)
-
setPrimitiveConverters
public MapperBuilder setPrimitiveConverters(boolean val)
-
setSerializeValueFilter
public MapperBuilder setSerializeValueFilter(SerializeValueFilter serializeValueFilter)
-
setUseBigDecimalForFloats
public MapperBuilder setUseBigDecimalForFloats(boolean useBigDecimalForFloats)
-
setAutoAdjustStringBuffers
public MapperBuilder setAutoAdjustStringBuffers(boolean autoAdjustStringBuffers)
-
setDeduplicateObjects
public MapperBuilder setDeduplicateObjects(java.lang.Boolean deduplicateObjects)
If any non-primitive Java Object gets serialised more than just one time, then we write a JsonPointer to the first occurrence instead. This will effectively also avoid endless loops in data with cycles! An example: Assume you have a Person with a name 'Sarah' and her daughter, a Person with the name 'Clemens' both stored in a JSON array. Given the Java Code:Person sarah = new Person("Sarah"); Person clemens = new Person("Clemens"); clemens.setMother(sarah); Person[] family = new Person[]{sarah, clemens};
Transformed to JSON this will now look like the following:[{"name":"Sarah"},{"name":"Clemens","mother":"/0"}]
That means instead of serialising 'mother' as full object we will now only store a JsonPointer to the Person 'Sarah'. When deserialised back Johnzon will automatically de-reference the JsonPointer back to the correct instance. Possible values:true
: deduplicate objectsfalse
: do not deduplicate objectsnull
: dedupliate based on theJohnzonDeduplicateObjects
annotation. This is the default
-
setUseJsRange
public MapperBuilder setUseJsRange(boolean value)
-
setUseBigDecimalForObjectNumbers
public MapperBuilder setUseBigDecimalForObjectNumbers(boolean value)
-
setMaxBigDecimalScale
public MapperBuilder setMaxBigDecimalScale(int maxBigDecimalScale)
-
setSupportEnumContainerDeserialization
public MapperBuilder setSupportEnumContainerDeserialization(boolean supportEnumContainerDeserialization)
-
setPolymorphicSerializationPredicate
public MapperBuilder setPolymorphicSerializationPredicate(java.util.function.Predicate<java.lang.Class<?>> serializationPredicate)
-
setPolymorphicDeserializationPredicate
public MapperBuilder setPolymorphicDeserializationPredicate(java.util.function.Predicate<java.lang.Class<?>> deserializationPredicate)
-
setPolymorphicDiscriminatorMapper
public MapperBuilder setPolymorphicDiscriminatorMapper(java.util.function.Function<java.lang.Class<?>,java.lang.String> discriminatorMapper)
-
setPolymorphicTypeLoader
public MapperBuilder setPolymorphicTypeLoader(java.util.function.Function<java.lang.String,java.lang.Class<?>> typeLoader)
-
setPolymorphicDiscriminator
public MapperBuilder setPolymorphicDiscriminator(java.lang.String value)
-
setSkipAccessModeWrapper
public MapperBuilder setSkipAccessModeWrapper(boolean skipAccessModeWrapper)
-
setMappingsFactory
public MapperBuilder setMappingsFactory(java.util.function.Function<MapperConfig,Mappings> mappingsFactory)
-
-