public class JsonbConfig extends Object
This object is not thread safe. Implementations are expected to make a defensive copy of the object before applying the configuration.All JSON Binding providers are required to support the following set of properties. Some providers may support additional properties.
jsonb.to.json.formatted- java.lang.Boolean- Controls whether or not the
JsonbtoJson()methods will format the resulting JSON data with line breaks and indentation. A true value for this property indicates human readable indented data, while a false value indicates unformatted data. Default value is false (unformatted) if this property is not specified.
jsonb.to.json.encoding- java.lang.String- The
JsonbserializationtoJson()methods will default to this property for encoding of output JSON data. Default value is 'UTF-8' if this property is not specified.
jsonb.from.json.encoding- java.lang.String- The
JsonbdeserializationfromJson()methods will default to this property encoding of input JSON data if the encoding cannot be detected.
| Modifier and Type | Field and Description |
|---|---|
static String |
ADAPTERS
Property used to specify custom mapping adapters for generic types.
|
static String |
BINARY_DATA_STRATEGY
Property used to specify custom binary data strategy.
|
static String |
DATE_FORMAT
Property used to specify custom date format globally.
|
static String |
DESERIALIZERS
Property used to specify custom deserializers.
|
static String |
ENCODING
The Jsonb serialization
toJson() methods will default to this property
for encoding of output JSON data. |
static String |
FORMATTING
Property used to specify whether or not the serialized
JSON data is formatted with line feeds and indentation.
|
static String |
LOCALE
Property used to specify locale globally.
|
static String |
NULL_VALUES
Property used to specify null values serialization behavior.
|
static String |
PROPERTY_NAMING_STRATEGY
Property used to specify custom naming strategy.
|
static String |
PROPERTY_ORDER_STRATEGY
Property used to specify custom order strategy.
|
static String |
PROPERTY_VISIBILITY_STRATEGY
Property used to specify custom visibility strategy.
|
static String |
SERIALIZERS
Property used to specify custom serializers.
|
static String |
STRICT_IJSON
Property used to specify strict I-JSON serialization compliance.
|
| Constructor and Description |
|---|
JsonbConfig() |
| Modifier and Type | Method and Description |
|---|---|
Map<String,Object> |
getAsMap()
Return all configuration properties as an unmodifiable map.
|
Optional<Object> |
getProperty(String name)
Return value of particular configuration property.
|
JsonbConfig |
setProperty(String name,
Object value)
Set the particular configuration property to a new value.
|
JsonbConfig |
withAdapters(JsonbAdapter... adapters)
Property used to specify custom mapping adapters.
|
JsonbConfig |
withBinaryDataStrategy(String binaryDataStrategy)
Property used to specify custom binary data strategy.
|
JsonbConfig |
withDateFormat(String dateFormat,
Locale locale)
Property used to specify custom date format.
|
JsonbConfig |
withDeserializers(JsonbDeserializer... deserializers)
Property used to specify custom deserializers.
|
JsonbConfig |
withEncoding(String encoding)
The binding operations will default to this property
for encoding of JSON data.
|
JsonbConfig |
withFormatting(Boolean formatted)
Property used to specify whether or not the serialized JSON data is formatted
with linefeeds and indentation.
|
JsonbConfig |
withLocale(Locale locale)
Property used to specify custom locale.
|
JsonbConfig |
withNullValues(Boolean serializeNullValues)
Property used to specify whether null values should be serialized to JSON document or skipped.
|
JsonbConfig |
withPropertyNamingStrategy(PropertyNamingStrategy propertyNamingStrategy)
Property used to specify custom naming strategy.
|
JsonbConfig |
withPropertyNamingStrategy(String propertyNamingStrategy)
Property used to specify custom naming strategy.
|
JsonbConfig |
withPropertyOrderStrategy(String propertyOrderStrategy)
Property used to specify property order strategy.
|
JsonbConfig |
withPropertyVisibilityStrategy(PropertyVisibilityStrategy propertyVisibilityStrategy)
Property used to specify custom property visibility strategy.
|
JsonbConfig |
withSerializers(JsonbSerializer... serializers)
Property used to specify custom serializers.
|
JsonbConfig |
withStrictIJSON(Boolean enabled)
Property used to specify whether strict I-JSON serialization compliance should be enforced.
|
public static final String FORMATTING
public static final String ENCODING
toJson() methods will default to this property
for encoding of output JSON data. Default value is 'UTF-8'.
The Jsonb deserialization fromJson() methods will default to this
property encoding of input JSON data if the encoding cannot be detected
automatically.public static final String PROPERTY_NAMING_STRATEGY
public static final String PROPERTY_ORDER_STRATEGY
public static final String NULL_VALUES
public static final String STRICT_IJSON
public static final String PROPERTY_VISIBILITY_STRATEGY
public static final String ADAPTERS
public static final String SERIALIZERS
public static final String DESERIALIZERS
public static final String BINARY_DATA_STRATEGY
public static final String DATE_FORMAT
public static final String LOCALE
public final JsonbConfig setProperty(String name, Object value)
name - The name of the property to be set. This value can either
be specified using one of the constant fields or a user supplied
string.value - The value of the property to be setNullPointerException - if the name parameter is null.public final Optional<Object> getProperty(String name)
name - The name of the property to retrieveNullPointerException - if the name parameter is null.public final Map<String,Object> getAsMap()
public final JsonbConfig withFormatting(Boolean formatted)
FORMATTING property.formatted - True means serialized data is formatted, false (default)
means no formatting.public final JsonbConfig withNullValues(Boolean serializeNullValues)
NULL_VALUES property.serializeNullValues - True means that null values will be serialized into JSON document,
otherwise they will be effectively skipped.public final JsonbConfig withEncoding(String encoding)
ENCODING property.encoding - Valid character encoding as defined in the
RFC 7159 and supported by
Java Platform.public final JsonbConfig withStrictIJSON(Boolean enabled)
STRICT_IJSON property.enabled - True means data is serialized in strict compliance according to RFC 7493.public final JsonbConfig withPropertyNamingStrategy(PropertyNamingStrategy propertyNamingStrategy)
PROPERTY_NAMING_STRATEGY property.propertyNamingStrategy - Custom naming strategy which affects serialization and deserialization.public final JsonbConfig withPropertyNamingStrategy(String propertyNamingStrategy)
PROPERTY_NAMING_STRATEGY property.propertyNamingStrategy - Predefined naming strategy which affects serialization and deserialization.public final JsonbConfig withPropertyOrderStrategy(String propertyOrderStrategy)
PROPERTY_ORDER_STRATEGY property.propertyOrderStrategy - Predefined property order strategy which affects serialization.public final JsonbConfig withPropertyVisibilityStrategy(PropertyVisibilityStrategy propertyVisibilityStrategy)
PROPERTY_VISIBILITY_STRATEGY property.propertyVisibilityStrategy - Custom property visibility strategy which affects serialization and deserialization.public final JsonbConfig withAdapters(JsonbAdapter... adapters)
ADAPTERS property.
Calling withAdapters more than once will merge the adapters with previous value.adapters - Custom mapping adapters which affects serialization and deserialization.public final JsonbConfig withSerializers(JsonbSerializer... serializers)
SERIALIZERS property.
Calling withSerializers more than once will merge the serializers with previous value.serializers - Custom serializers which affects serialization.public final JsonbConfig withDeserializers(JsonbDeserializer... deserializers)
DESERIALIZERS property.
Calling withDeserializers more than once will merge the deserializers with previous value.deserializers - Custom deserializers which affects deserialization.public final JsonbConfig withBinaryDataStrategy(String binaryDataStrategy)
BINARY_DATA_STRATEGY property.binaryDataStrategy - Custom binary data strategy which affects serialization and deserialization.public final JsonbConfig withDateFormat(String dateFormat, Locale locale)
DATE_FORMAT and LOCALE properties.dateFormat - Custom date format as specified in DateTimeFormatter.locale - Locale, if null is specified Locale.getDefault() will be used.public final JsonbConfig withLocale(Locale locale)
LOCALE property.locale - Locale, must not be null.Copyright © 2018,2020 Eclipse Foundation.
Use is subject to license terms.