Package org.json.simple
Class JsonObject
- java.lang.Object
-
- java.util.AbstractMap<K,V>
-
- java.util.HashMap<String,Object>
-
- org.json.simple.JsonObject
-
public class JsonObject extends HashMap<String,Object> implements Jsonable
JsonObject is a common non-thread safe data format for string to data mappings. The contents of a JsonObject are only validated as JSON values on serialization. Meaning all values added to a JsonObject must be recognized by the Jsoner for it to be a true 'JsonObject', so it is really a JsonableHashMap that will serialize to a JsonObject if all of its contents are valid JSON.- Since:
- 2.0.0
- See Also:
Jsoner
, Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class java.util.AbstractMap
AbstractMap.SimpleEntry<K extends Object,V extends Object>, AbstractMap.SimpleImmutableEntry<K extends Object,V extends Object>
-
-
Constructor Summary
Constructors Constructor Description JsonObject()
Instantiates an empty JsonObject.JsonObject(Map<String,?> map)
Instantiate a new JsonObject by accepting a map's entries, which could lead to de/serialization issues of the resulting JsonObject since the entry values aren't validated as JSON values.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description BigDecimal
getBigDecimal(String key)
Deprecated.2.3.0 in favor ofgetBigDecimal(JsonKey)
BigDecimal
getBigDecimal(JsonKey key)
A convenience method that assumes there is a BigDecimal, Number, or String at the given key.BigDecimal
getBigDecimalOrDefault(String key, BigDecimal defaultValue)
Deprecated.2.3.0 in favor ofgetBigDecimalOrDefault(JsonKey)
BigDecimal
getBigDecimalOrDefault(JsonKey key)
A convenience method that assumes there is a BigDecimal, Number, or String at the given key.Boolean
getBoolean(String key)
Deprecated.2.3.0 in favor ofgetBoolean(JsonKey)
Boolean
getBoolean(JsonKey key)
A convenience method that assumes there is a Boolean or String value at the given key.Boolean
getBooleanOrDefault(String key, boolean defaultValue)
Deprecated.2.3.0 in favor ofgetBooleanOrDefault(JsonKey)
Boolean
getBooleanOrDefault(JsonKey key)
A convenience method that assumes there is a Boolean or String value at the given key.Byte
getByte(String key)
Deprecated.2.3.0 in favor ofgetByte(JsonKey)
Byte
getByte(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.Byte
getByteOrDefault(String key, byte defaultValue)
Deprecated.2.3.0 in favor ofgetByteOrDefault(JsonKey)
Byte
getByteOrDefault(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.<T extends Collection<?>>
TgetCollection(String key)
Deprecated.2.3.0 in favor ofgetCollection(JsonKey)
<T extends Collection<?>>
TgetCollection(JsonKey key)
A convenience method that assumes there is a Collection at the given key.<T extends Collection<?>>
TgetCollectionOrDefault(String key, T defaultValue)
Deprecated.2.3.0 in favor ofgetCollectionOrDefault(JsonKey)
<T extends Collection<?>>
TgetCollectionOrDefault(JsonKey key)
A convenience method that assumes there is a Collection at the given key.Double
getDouble(String key)
Deprecated.2.3.0 in favor ofgetDouble(JsonKey)
Double
getDouble(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.Double
getDoubleOrDefault(String key, double defaultValue)
Deprecated.2.3.0 in favor ofgetDoubleOrDefault(JsonKey)
Double
getDoubleOrDefault(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.<T extends Enum<T>>
TgetEnum(String key)
Deprecated.2.3.0 in favor ofgetEnum(JsonKey)
<T extends Enum<T>>
TgetEnum(JsonKey key)
Deprecated.2.3.0 Jsoner deprecated automatically serializing enums as Strings.<T extends Enum<T>>
TgetEnumOrDefault(String key, T defaultValue)
Deprecated.2.3.0 in favor ofgetEnumOrDefault(JsonKey)
<T extends Enum<T>>
TgetEnumOrDefault(JsonKey key)
Deprecated.2.3.0 Jsoner deprecated automatically serializing enums as Strings.Float
getFloat(String key)
Deprecated.2.3.0 in favor ofgetFloat(JsonKey)
Float
getFloat(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.Float
getFloatOrDefault(String key, float defaultValue)
Deprecated.2.3.0 in favor ofgetFloatOrDefault(JsonKey)
Float
getFloatOrDefault(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.Integer
getInteger(String key)
Deprecated.2.3.0 in favor ofgetInteger(JsonKey)
Integer
getInteger(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.Integer
getIntegerOrDefault(String key, int defaultValue)
Deprecated.2.3.0 in favor ofgetIntegerOrDefault(JsonKey)
Integer
getIntegerOrDefault(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.Long
getLong(String key)
Deprecated.2.3.0 in favor ofgetLong(JsonKey)
Long
getLong(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.Long
getLongOrDefault(String key, long defaultValue)
Deprecated.2.3.0 in favor ofgetLongOrDefault(JsonKey)
Long
getLongOrDefault(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.<T extends Map<?,?>>
TgetMap(String key)
Deprecated.2.3.0 in favor ofgetMap(JsonKey)
<T extends Map<?,?>>
TgetMap(JsonKey key)
A convenience method that assumes there is a Map at the given key.<T extends Map<?,?>>
TgetMapOrDefault(String key, T defaultValue)
Deprecated.2.3.0 in favor ofgetMapOrDefault(JsonKey)
<T extends Map<?,?>>
TgetMapOrDefault(JsonKey key)
A convenience method that assumes there is a Map at the given key.Short
getShort(String key)
Deprecated.2.3.0 in favor ofgetShort(JsonKey)
Short
getShort(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.Short
getShortOrDefault(String key, short defaultValue)
Deprecated.2.3.0 in favor ofgetShortOrDefault(JsonKey)
Short
getShortOrDefault(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.String
getString(String key)
Deprecated.2.3.0 in favor ofgetString(JsonKey)
String
getString(JsonKey key)
A convenience method that assumes there is a Boolean, Number, or String value at the given key.String
getStringOrDefault(String key, String defaultValue)
Deprecated.2.3.0 in favor ofgetStringOrDefault(JsonKey)
String
getStringOrDefault(JsonKey key)
A convenience method that assumes there is a Boolean, Number, or String value at the given key.void
requireKeys(JsonKey... keys)
Ensures the given keys are present.String
toJson()
Serialize to a JSON formatted string.void
toJson(Writer writable)
Serialize to a JSON formatted stream.-
Methods inherited from class java.util.HashMap
clear, clone, compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, entrySet, forEach, get, getOrDefault, isEmpty, keySet, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, replaceAll, size, values
-
Methods inherited from class java.util.AbstractMap
equals, hashCode, toString
-
-
-
-
Constructor Detail
-
JsonObject
public JsonObject()
Instantiates an empty JsonObject.
-
JsonObject
public JsonObject(Map<String,?> map)
Instantiate a new JsonObject by accepting a map's entries, which could lead to de/serialization issues of the resulting JsonObject since the entry values aren't validated as JSON values.- Parameters:
map
- represents the mappings to produce the JsonObject with.
-
-
Method Detail
-
requireKeys
public void requireKeys(JsonKey... keys)
Ensures the given keys are present.- Parameters:
keys
- represents the keys that must be present.- Throws:
NoSuchElementException
- if any of the given keys are missing.- Since:
- 2.3.0 to ensure critical keys are in the JsonObject.
-
getBigDecimal
public BigDecimal getBigDecimal(JsonKey key)
A convenience method that assumes there is a BigDecimal, Number, or String at the given key. If a Number is there its Number#toString() is used to construct a new BigDecimal(String). If a String is there it is used to construct a new BigDecimal(String).- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a BigDecimal representing the value paired with the key.
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
BigDecimal
,Object.toString()
,JsonKey
-
getBigDecimal
@Deprecated public BigDecimal getBigDecimal(String key)
Deprecated.2.3.0 in favor ofgetBigDecimal(JsonKey)
A convenience method that assumes there is a BigDecimal, Number, or String at the given key. If a Number is there its Number#toString() is used to construct a new BigDecimal(String). If a String is there it is used to construct a new BigDecimal(String).- Parameters:
key
- representing where the value ought to be stored at.- Returns:
- the value stored at the key.
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- See Also:
BigDecimal
,Object.toString()
-
getBigDecimalOrDefault
public BigDecimal getBigDecimalOrDefault(JsonKey key)
A convenience method that assumes there is a BigDecimal, Number, or String at the given key. If a Number is there its Number#toString() is used to construct a new BigDecimal(String). If a String is there it is used to construct a new BigDecimal(String).- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a BigDecimal representing the value paired with the key or JsonKey#getValue() if the key isn't present.
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
BigDecimal
,Object.toString()
,JsonKey
-
getBigDecimalOrDefault
@Deprecated public BigDecimal getBigDecimalOrDefault(String key, BigDecimal defaultValue)
Deprecated.2.3.0 in favor ofgetBigDecimalOrDefault(JsonKey)
A convenience method that assumes there is a BigDecimal, Number, or String at the given key. If a Number is there its Number#toString() is used to construct a new BigDecimal(String). If a String is there it is used to construct a new BigDecimal(String).- Parameters:
key
- representing where the value ought to be stored at.defaultValue
- representing what is returned when the key isn't in the JsonObject.- Returns:
- the value stored at the key or the default provided if the key doesn't exist.
- Throws:
ClassCastException
- if there was a value but didn't match the assumed return types.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- See Also:
BigDecimal
,Object.toString()
-
getBoolean
public Boolean getBoolean(JsonKey key)
A convenience method that assumes there is a Boolean or String value at the given key.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a Boolean representing the value paired with the key.
- Throws:
ClassCastException
- if the value didn't match the assumed return type.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
JsonKey
-
getBoolean
@Deprecated public Boolean getBoolean(String key)
Deprecated.2.3.0 in favor ofgetBoolean(JsonKey)
A convenience method that assumes there is a Boolean or String value at the given key.- Parameters:
key
- representing where the value ought to be stored at.- Returns:
- the value stored at the key.
- Throws:
ClassCastException
- if the value didn't match the assumed return type.
-
getBooleanOrDefault
public Boolean getBooleanOrDefault(JsonKey key)
A convenience method that assumes there is a Boolean or String value at the given key.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a Boolean representing the value paired with the key or JsonKey#getValue() if the key isn't present.
- Throws:
ClassCastException
- if the value didn't match the assumed return type.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
JsonKey
-
getBooleanOrDefault
@Deprecated public Boolean getBooleanOrDefault(String key, boolean defaultValue)
Deprecated.2.3.0 in favor ofgetBooleanOrDefault(JsonKey)
A convenience method that assumes there is a Boolean or String value at the given key.- Parameters:
key
- representing where the value ought to be stored at.defaultValue
- representing what is returned when the key isn't in the JsonObject.- Returns:
- the value stored at the key or the default provided if the key doesn't exist.
- Throws:
ClassCastException
- if there was a value but didn't match the assumed return type.
-
getByte
public Byte getByte(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a Byte representing the value paired with the key (which may involve rounding or truncation).
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
Number.byteValue()
,JsonKey
-
getByte
@Deprecated public Byte getByte(String key)
Deprecated.2.3.0 in favor ofgetByte(JsonKey)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be stored at.- Returns:
- the value stored at the key (which may involve rounding or truncation).
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- See Also:
Number.byteValue()
-
getByteOrDefault
public Byte getByteOrDefault(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a Byte representing the value paired with the key or JsonKey#getValue() if the key isn't present (which may involve rounding or truncation).
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
Number.byteValue()
,JsonKey
-
getByteOrDefault
@Deprecated public Byte getByteOrDefault(String key, byte defaultValue)
Deprecated.2.3.0 in favor ofgetByteOrDefault(JsonKey)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be stored at.defaultValue
- representing what is returned when the key isn't in the JsonObject.- Returns:
- the value stored at the key (which may involve rounding or truncation) or the default provided if the key doesn't exist.
- Throws:
ClassCastException
- if there was a value but didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- See Also:
Number.byteValue()
-
getCollection
public <T extends Collection<?>> T getCollection(JsonKey key)
A convenience method that assumes there is a Collection at the given key.- Type Parameters:
T
- the kind of collection to expect at the key. Note unless manually added, collection values will be a JsonArray.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a Collection representing the value paired with the key.
- Throws:
ClassCastException
- if the value didn't match the assumed return type.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
JsonKey
-
getCollection
@Deprecated public <T extends Collection<?>> T getCollection(String key)
Deprecated.2.3.0 in favor ofgetCollection(JsonKey)
A convenience method that assumes there is a Collection at the given key.- Type Parameters:
T
- the kind of collection to expect at the key. Note unless manually added, collection values will be a JsonArray.- Parameters:
key
- representing where the value ought to be stored at.- Returns:
- the value stored at the key.
- Throws:
ClassCastException
- if the value didn't match the assumed return type.
-
getCollectionOrDefault
public <T extends Collection<?>> T getCollectionOrDefault(JsonKey key)
A convenience method that assumes there is a Collection at the given key.- Type Parameters:
T
- the kind of collection to expect at the key. Note unless manually added, collection values will be a JsonArray.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a Collection representing the value paired with the key or JsonKey#getValue() if the key isn't present..
- Throws:
ClassCastException
- if the value didn't match the assumed return type.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
JsonKey
-
getCollectionOrDefault
@Deprecated public <T extends Collection<?>> T getCollectionOrDefault(String key, T defaultValue)
Deprecated.2.3.0 in favor ofgetCollectionOrDefault(JsonKey)
A convenience method that assumes there is a Collection at the given key.- Type Parameters:
T
- the kind of collection to expect at the key. Note unless manually added, collection values will be a JsonArray.- Parameters:
key
- representing where the value ought to be stored at.defaultValue
- representing what is returned when the key isn't in the JsonObject.- Returns:
- the value stored at the key or the default provided if the key doesn't exist.
- Throws:
ClassCastException
- if there was a value but didn't match the assumed return type.
-
getDouble
public Double getDouble(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a Double representing the value paired with the key (which may involve rounding or truncation).
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
Number.doubleValue()
,JsonKey
-
getDouble
@Deprecated public Double getDouble(String key)
Deprecated.2.3.0 in favor ofgetDouble(JsonKey)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be stored at.- Returns:
- the value stored at the key (which may involve rounding or truncation).
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- See Also:
Number.doubleValue()
-
getDoubleOrDefault
public Double getDoubleOrDefault(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a Double representing the value paired with the key or JsonKey#getValue() if the key isn't present (which may involve rounding or truncation).
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
Number.doubleValue()
,JsonKey
-
getDoubleOrDefault
@Deprecated public Double getDoubleOrDefault(String key, double defaultValue)
Deprecated.2.3.0 in favor ofgetDoubleOrDefault(JsonKey)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be stored at.defaultValue
- representing what is returned when the key isn't in the JsonObject.- Returns:
- the value stored at the key (which may involve rounding or truncation) or the default provided if the key doesn't exist.
- Throws:
ClassCastException
- if there was a value but didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- See Also:
Number.doubleValue()
-
getEnum
@Deprecated public <T extends Enum<T>> T getEnum(JsonKey key) throws ClassNotFoundException
Deprecated.2.3.0 Jsoner deprecated automatically serializing enums as Strings.A convenience method that assumes there is a String value at the given key representing a fully qualified name in dot notation of an enum.- Type Parameters:
T
- the Enum type the value at the key is expected to belong to.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- an Enum representing the value paired with the key.
- Throws:
ClassNotFoundException
- if the value was a String but the declaring enum type couldn't be determined with it.ClassCastException
- if the element at the index was not a String or if the fully qualified enum name is of the wrong type.IllegalArgumentException
- if an enum type was determined but it doesn't define an enum with the determined name.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
Enum.valueOf(Class, String)
,JsonKey
-
getEnum
@Deprecated public <T extends Enum<T>> T getEnum(String key) throws ClassNotFoundException
Deprecated.2.3.0 in favor ofgetEnum(JsonKey)
A convenience method that assumes there is a String value at the given key representing a fully qualified name in dot notation of an enum.- Type Parameters:
T
- the Enum type the value at the key is expected to belong to.- Parameters:
key
- representing where the value ought to be stored at.- Returns:
- the enum based on the string found at the key, or null if the value paired with the provided key is null.
- Throws:
ClassNotFoundException
- if the value was a String but the declaring enum type couldn't be determined with it.ClassCastException
- if the element at the index was not a String or if the fully qualified enum name is of the wrong type.IllegalArgumentException
- if an enum type was determined but it doesn't define an enum with the determined name.- See Also:
Enum.valueOf(Class, String)
-
getEnumOrDefault
@Deprecated public <T extends Enum<T>> T getEnumOrDefault(JsonKey key) throws ClassNotFoundException
Deprecated.2.3.0 Jsoner deprecated automatically serializing enums as Strings.A convenience method that assumes there is a String value at the given key representing a fully qualified name in dot notation of an enum.- Type Parameters:
T
- the Enum type the value at the key is expected to belong to.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- an Enum representing the value paired with the key or JsonKey#getValue() if the key isn't present.
- Throws:
ClassNotFoundException
- if the value was a String but the declaring enum type couldn't be determined with it.ClassCastException
- if the element at the index was not a String or if the fully qualified enum name is of the wrong type.IllegalArgumentException
- if an enum type was determined but it doesn't define an enum with the determined name.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
Enum.valueOf(Class, String)
,JsonKey
-
getEnumOrDefault
@Deprecated public <T extends Enum<T>> T getEnumOrDefault(String key, T defaultValue) throws ClassNotFoundException
Deprecated.2.3.0 in favor ofgetEnumOrDefault(JsonKey)
A convenience method that assumes there is a String value at the given key representing a fully qualified name in dot notation of an enum.- Type Parameters:
T
- the Enum type the value at the key is expected to belong to.- Parameters:
key
- representing where the value ought to be stored at.defaultValue
- representing what is returned when the key isn't in the JsonObject.- Returns:
- the enum based on the string found at the key, or the defaultValue provided if the key doesn't exist, or null if the value paired with provided key is null.
- Throws:
ClassNotFoundException
- if the value was a String but the declaring enum type couldn't be determined with it.ClassCastException
- if the element at the index was not a String or if the fully qualified enum name is of the wrong type.IllegalArgumentException
- if an enum type was determined but it doesn't define an enum with the determined name.- See Also:
Enum.valueOf(Class, String)
-
getFloat
public Float getFloat(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a Float representing the value paired with the key (which may involve rounding or truncation).
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
Number.floatValue()
,JsonKey
-
getFloat
@Deprecated public Float getFloat(String key)
Deprecated.2.3.0 in favor ofgetFloat(JsonKey)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be stored at.- Returns:
- the value stored at the key (which may involve rounding or truncation).
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- See Also:
Number.floatValue()
-
getFloatOrDefault
public Float getFloatOrDefault(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a Float representing the value paired with the key or JsonKey#getValue() if the key isn't present (which may involve rounding or truncation).
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
Number.floatValue()
,JsonKey
-
getFloatOrDefault
@Deprecated public Float getFloatOrDefault(String key, float defaultValue)
Deprecated.2.3.0 in favor ofgetFloatOrDefault(JsonKey)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be stored at.defaultValue
- representing what is returned when the key isn't in the JsonObject.- Returns:
- the value stored at the key (which may involve rounding or truncation) or the default provided if the key doesn't exist.
- Throws:
ClassCastException
- if there was a value but didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- See Also:
Number.floatValue()
-
getInteger
public Integer getInteger(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- an Integer representing the value paired with the key (which may involve rounding or truncation).
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
Number.intValue()
,JsonKey
-
getInteger
@Deprecated public Integer getInteger(String key)
Deprecated.2.3.0 in favor ofgetInteger(JsonKey)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be stored at.- Returns:
- the value stored at the key (which may involve rounding or truncation).
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- See Also:
Number.intValue()
-
getIntegerOrDefault
public Integer getIntegerOrDefault(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- an Integer representing the value paired with the key or JsonKey#getValue() if the key isn't present (which may involve rounding or truncation).
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
Number.intValue()
,JsonKey
-
getIntegerOrDefault
@Deprecated public Integer getIntegerOrDefault(String key, int defaultValue)
Deprecated.2.3.0 in favor ofgetIntegerOrDefault(JsonKey)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be stored at.defaultValue
- representing what is returned when the key isn't in the JsonObject.- Returns:
- the value stored at the key (which may involve rounding or truncation) or the default provided if the key doesn't exist.
- Throws:
ClassCastException
- if there was a value but didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- See Also:
Number.intValue()
-
getLong
public Long getLong(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a Long representing the value paired with the key (which may involve rounding or truncation).
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
Number.longValue()
,JsonKey
-
getLong
@Deprecated public Long getLong(String key)
Deprecated.2.3.0 in favor ofgetLong(JsonKey)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be stored at.- Returns:
- the value stored at the key (which may involve rounding or truncation).
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- See Also:
Number.longValue()
-
getLongOrDefault
public Long getLongOrDefault(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a Long representing the value paired with the key or JsonKey#getValue() if the key isn't present (which may involve rounding or truncation).
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
Number.longValue()
,JsonKey
-
getLongOrDefault
@Deprecated public Long getLongOrDefault(String key, long defaultValue)
Deprecated.2.3.0 in favor ofgetLongOrDefault(JsonKey)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be stored at.defaultValue
- representing what is returned when the key isn't in the JsonObject.- Returns:
- the value stored at the key (which may involve rounding or truncation) or the default provided if the key doesn't exist.
- Throws:
ClassCastException
- if there was a value but didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- See Also:
Number.longValue()
-
getMap
public <T extends Map<?,?>> T getMap(JsonKey key)
A convenience method that assumes there is a Map at the given key.- Type Parameters:
T
- the kind of map to expect at the key. Note unless manually added, Map values will be a JsonObject.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a Map representing the value paired with the key.
- Throws:
ClassCastException
- if the value didn't match the assumed return type.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
JsonKey
-
getMap
@Deprecated public <T extends Map<?,?>> T getMap(String key)
Deprecated.2.3.0 in favor ofgetMap(JsonKey)
A convenience method that assumes there is a Map at the given key.- Type Parameters:
T
- the kind of map to expect at the key. Note unless manually added, Map values will be a JsonObject.- Parameters:
key
- representing where the value ought to be stored at.- Returns:
- the value stored at the key.
- Throws:
ClassCastException
- if the value didn't match the assumed return type.
-
getMapOrDefault
public <T extends Map<?,?>> T getMapOrDefault(JsonKey key)
A convenience method that assumes there is a Map at the given key.- Type Parameters:
T
- the kind of map to expect at the key. Note unless manually added, Map values will be a JsonObject.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a Map representing the value paired with the key or JsonKey#getValue() if the key isn't present.
- Throws:
ClassCastException
- if the value didn't match the assumed return type.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
JsonKey
-
getMapOrDefault
@Deprecated public <T extends Map<?,?>> T getMapOrDefault(String key, T defaultValue)
Deprecated.2.3.0 in favor ofgetMapOrDefault(JsonKey)
A convenience method that assumes there is a Map at the given key.- Type Parameters:
T
- the kind of map to expect at the key. Note unless manually added, Map values will be a JsonObject.- Parameters:
key
- representing where the value ought to be stored at.defaultValue
- representing what is returned when the key isn't in the JsonObject.- Returns:
- the value stored at the key or the default provided if the key doesn't exist.
- Throws:
ClassCastException
- if there was a value but didn't match the assumed return type.
-
getShort
public Short getShort(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a Short representing the value paired with the key (which may involve rounding or truncation).
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
Number.shortValue()
,JsonKey
-
getShort
@Deprecated public Short getShort(String key)
Deprecated.2.3.0 in favor ofgetShort(JsonKey)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be stored at.- Returns:
- the value stored at the key (which may involve rounding or truncation).
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- See Also:
Number.shortValue()
-
getShortOrDefault
public Short getShortOrDefault(JsonKey key)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a Short representing the value paired with the key or JsonKey#getValue() if the key isn't present (which may involve rounding or truncation).
- Throws:
ClassCastException
- if the value didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
Number.shortValue()
,JsonKey
-
getShortOrDefault
@Deprecated public Short getShortOrDefault(String key, short defaultValue)
Deprecated.2.3.0 in favor ofgetShortOrDefault(JsonKey)
A convenience method that assumes there is a Number or String value at the given key.- Parameters:
key
- representing where the value ought to be stored at.defaultValue
- representing what is returned when the key isn't in the JsonObject.- Returns:
- the value stored at the key (which may involve rounding or truncation) or the default provided if the key doesn't exist.
- Throws:
ClassCastException
- if there was a value but didn't match the assumed return type.NumberFormatException
- if a String isn't a valid representation of a BigDecimal or if the Number represents the double or float Infinity or NaN.- See Also:
Number.shortValue()
-
getString
public String getString(JsonKey key)
A convenience method that assumes there is a Boolean, Number, or String value at the given key.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a String representing the value paired with the key.
- Throws:
ClassCastException
- if the value didn't match the assumed return type.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
JsonKey
-
getString
@Deprecated public String getString(String key)
Deprecated.2.3.0 in favor ofgetString(JsonKey)
A convenience method that assumes there is a Boolean, Number, or String value at the given key.- Parameters:
key
- representing where the value ought to be stored at.- Returns:
- the value stored at the key.
- Throws:
ClassCastException
- if the value didn't match the assumed return type.
-
getStringOrDefault
public String getStringOrDefault(JsonKey key)
A convenience method that assumes there is a Boolean, Number, or String value at the given key.- Parameters:
key
- representing where the value ought to be paired with.- Returns:
- a String representing the value paired with the key or JsonKey#getValue() if the key isn't present.
- Throws:
ClassCastException
- if the value didn't match the assumed return type.- Since:
- 2.3.0 to utilize JsonKey
- See Also:
JsonKey
-
getStringOrDefault
@Deprecated public String getStringOrDefault(String key, String defaultValue)
Deprecated.2.3.0 in favor ofgetStringOrDefault(JsonKey)
A convenience method that assumes there is a Boolean, Number, or String value at the given key.- Parameters:
key
- representing where the value ought to be stored at.defaultValue
- representing what is returned when the key isn't in the JsonObject.- Returns:
- the value stored at the key or the default provided if the key doesn't exist.
- Throws:
ClassCastException
- if there was a value but didn't match the assumed return type.
-
toJson
public String toJson()
Description copied from interface:Jsonable
Serialize to a JSON formatted string.
-
toJson
public void toJson(Writer writable) throws IOException
Description copied from interface:Jsonable
Serialize to a JSON formatted stream.- Specified by:
toJson
in interfaceJsonable
- Parameters:
writable
- where the resulting JSON text should be sent.- Throws:
IOException
- when the writable encounters an I/O error.
-
-