Json Value
Defined in package com.scandit.datacapture.core.json
Warning
The deserialization API is not yet stable and will still change over the coming releases.
- JsonValue
class JsonValue
Added in version 6.0.0
JSON representation for use with the Scandit Data Capture SDK. It provides a lot of convenience functions for deserialization of base classes. It also tracks the usage of properties to be able to later report those that were not used for deserialization (potentially because they were misspelled or are outdated).
- JsonValue()
JsonValue(@NonNull String jsonData)
Added in version 6.1.0
Returns a new JSON Value for the given json string. An exception is thrown if the string is not a valid JSON representation.
- jsonString()
@NonNull String jsonString()
Added in version 6.1.0
Returns the string representation of the JSON value.
- asBoolean()
boolean
asBoolean()Added in version 6.1.0
Returns the value as a boolean. An exception is thrown if the conversion is not possible.
- requireByKeyAsBoolean(key)
boolean
requireByKeyAsBoolean(@NonNull String key)Added in version 6.1.0
Returns the value for the given key as a boolean. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not a boolean.
- getByKeyAsBoolean(key, defaultValue)
boolean
getByKeyAsBoolean(@NonNull String key,boolean
defaultValue)Added in version 6.1.0
Returns the value for the given key as a boolean. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not a boolean.
- asInt()
int
asInt()Added in version 6.1.0
Returns the value as an integer. An exception is thrown if the conversion is not possible.
- requireByKeyAsInt(key)
int
requireByKeyAsInt(@NonNull String key)Added in version 6.1.0
Returns the value for the given key as an integer. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not an integer.
- getByKeyAsInt(key, defaultValue)
int
getByKeyAsInt(@NonNull String key,int
defaultValue)Added in version 6.1.0
Returns the value for the given key as an integer. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not an integer.
- asFloat()
float
asFloat()Added in version 6.1.0
Returns the value as a float. An exception is thrown if the conversion is not possible.
- requireByKeyAsFloat(key)
float
requireByKeyAsFloat(@NonNull String key)Added in version 6.1.0
Returns the value for the given key as a float. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not a float.
- getByKeyAsFloat(key, defaultValue)
float
getByKeyAsFloat(@NonNull String key,float
defaultValue)Added in version 6.1.0
Returns the value for the given key as a float. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not a float.
- asString()
@NonNull String asString()
Added in version 6.1.0
Returns the value as a string. An exception is thrown if the conversion is not possible.
- requireByKeyAsString(key)
@NonNull String requireByKeyAsString(@NonNull String key)
Added in version 6.1.0
Returns the value for the given key as a string. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not a string.
- getByKeyAsString(key, defaultValue)
@NonNull String getByKeyAsString(@NonNull String key, @NonNull String defaultValue)
Added in version 6.1.0
Returns the value for the given key as a string. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not a string.
- asColor()
int
asColor()Added in version 6.1.0
Returns the value as a color. An exception is thrown if the conversion is not possible.
- requireByKeyAsColor(key)
int
requireByKeyAsColor(@NonNull String key)Added in version 6.1.0
Returns the value for the given key as a color. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not a color.
- getByKeyAsColor(key, defaultValue)
int
getByKeyAsColor(@NonNull String key,int
defaultValue)Added in version 6.1.0
Returns the value for the given key as a color. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not a color.
- asBrush()
@NonNull Brush asBrush()
Added in version 6.1.0
Returns the value as a Brush. An exception is thrown if the conversion is not possible.
- requireByKeyAsBrush(key)
Brush requireByKeyAsBrush(@NonNull String key)
Added in version 6.1.0
Returns the value for the given key as a Brush. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not a Brush.
- getByKeyAsBrush(key, defaultValue)
Brush getByKeyAsBrush(@NonNull String key, Brush defaultValue)
Added in version 6.1.0
Returns the value for the given key as a Brush. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not a Brush.
- asFloatWithUnit()
@NonNull FloatWithUnit asFloatWithUnit()
Added in version 6.1.0
Returns the value as a FloatWithUnit. An exception is thrown if the conversion is not possible.
- requireByKeyAsFloatWithUnit(key)
FloatWithUnit requireByKeyAsFloatWithUnit(@NonNull String key)
Added in version 6.1.0
Returns the value for the given key as a FloatWithUnit. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not a FloatWithUnit.
- getByKeyAsFloatWithUnit(key, defaultValue)
FloatWithUnit getByKeyAsFloatWithUnit(@NonNull String key, FloatWithUnit defaultValue)
Added in version 6.1.0
Returns the value for the given key as a FloatWithUnit. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not a FloatWithUnit.
- asPointWithUnit()
@NonNull PointWithUnit asPointWithUnit()
Added in version 6.1.0
Returns the value as a PointWithUnit. An exception is thrown if the conversion is not possible.
- requireByKeyAsPointWithUnit(key)
PointWithUnit requireByKeyAsPointWithUnit(@NonNull String key)
Added in version 6.1.0
Returns the value for the given key as a PointWithUnit. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not a PointWithUnit.
- getByKeyAsPointWithUnit(key, defaultValue)
PointWithUnit getByKeyAsPointWithUnit(@NonNull String key, PointWithUnit defaultValue)
Added in version 6.1.0
Returns the value for the given key as a PointWithUnit. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not a PointWithUnit.
- asMarginsWithUnit()
@NonNull MarginsWithUnit asMarginsWithUnit()
Added in version 6.1.0
Returns the value as a MarginsWithUnit. An exception is thrown if the conversion is not possible.
- requireByKeyAsMarginsWithUnit(key)
MarginsWithUnit requireByKeyAsMarginsWithUnit(@NonNull String key)
Added in version 6.1.0
Returns the value for the given key as a MarginsWithUnit. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not a MarginsWithUnit.
- getByKeyAsMarginsWithUnit(key, defaultValue)
MarginsWithUnit getByKeyAsMarginsWithUnit(@NonNull String key, MarginsWithUnit defaultValue)
Added in version 6.1.0
Returns the value for the given key as a MarginsWithUnit. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not a MarginsWithUnit.
- asArray()
@NonNull JsonValue asArray()
Added in version 6.1.0
Returns the value if it is an array. An exception is thrown if the conversion is not possible.
- requireByKeyAsArray(key)
@NonNull JsonValue requireByKeyAsArray(@NonNull String key)
Added in version 6.1.0
Returns the value for the given key as an array. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not an array.
- getByKeyAsArray(key, defaultValue)
@Nullable JsonValue getByKeyAsArray(@NonNull String key, @Nullable JsonValue defaultValue)
Added in version 6.1.0
Returns the value for the given key as an array. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not an array.
- size
long
getSize()Added in version 6.1.0
The size of the array. An exception is thrown if this JSON value is not an array.
- requireByIndex(index)
@NonNull JsonValue requireByIndex(
int
index)Added in version 6.1.0
Returns the value for the given index. An exception is thrown if this JSON Value is not an array or the given index is out of bounds.
- asObject()
@NonNull JsonValue asObject()
Added in version 6.1.0
Returns the value if it is an object. An exception is thrown if the conversion is not possible.
- requireByKeyAsObject(key)
@NonNull JsonValue requireByKeyAsObject(@NonNull String key)
Added in version 6.1.0
Returns the value for the given key as an object. An exception is thrown if this JSON Value is not an object, it does not contain a value for the given key or the value for the given key is not an object.
- getByKeyAsObject(key, defaultValue)
@Nullable JsonValue getByKeyAsObject(@NonNull String key, @Nullable JsonValue defaultValue)
Added in version 6.1.0
Returns the value for the given key as an object. The default value is returned if there is no value for the given key. An exception is thrown if this JSON Value is not an object or the value for the given key is not an object.
- contains(key)
boolean
contains(@NonNull String key)Added in version 6.1.0
Returns whether a value for the given key exists. An exception is thrown if this JSON Value is not an object.
- requireByKey(key)
@NonNull JsonValue requireByKey(@NonNull String key)
Added in version 6.1.0
Returns the value for the given key. An exception is thrown if this JSON Value is not an object or it does not contain a value for the given key.
- absolutePath
@NonNull String getAbsolutePath()
Added in version 6.1.0
The path from the root to this JSON value.
- used
boolean
getUsed()Added in version 6.1.0
Whether this JSON value was used during deserialization.