- java.lang.Object
-
- net.hamnaberg.json.Json.JValue
-
- net.hamnaberg.json.Json.JObject
-
- All Implemented Interfaces:
java.io.Serializable,java.lang.Iterable<java.util.Map.Entry<java.lang.String,Json.JValue>>
- Enclosing class:
- Json
public static final class Json.JObject extends Json.JValue implements java.lang.Iterable<java.util.Map.Entry<java.lang.String,Json.JValue>>
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static java.util.stream.Collector<java.util.Map.Entry<java.lang.String,Json.JValue>,?,java.util.Map<java.lang.String,Json.JValue>>MapCollectorjava.util.Map<java.lang.String,Json.JValue>value
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Json.JObjectconcat(Json.JObject other)booleancontainsKey(java.lang.String key)booleancontainsValue(Json.JValue value)booleanequals(java.lang.Object o)Json.JObjectfilter(java.util.function.BiPredicate<java.lang.String,Json.JValue> predicate)Json.JObjectfilterKeys(java.util.function.Predicate<java.lang.String> predicate)Json.JObjectfilterNot(java.util.function.BiPredicate<java.lang.String,Json.JValue> predicate)<X> Xfold(java.util.function.Function<Json.JString,X> fString, java.util.function.Function<Json.JBoolean,X> fBoolean, java.util.function.Function<Json.JNumber,X> fNumber, java.util.function.Function<Json.JObject,X> fObject, java.util.function.Function<Json.JArray,X> fArray, java.util.function.Supplier<X> fNull)voidfoldUnit(java.util.function.Consumer<Json.JString> fString, java.util.function.Consumer<Json.JBoolean> fBoolean, java.util.function.Consumer<Json.JNumber> fNumber, java.util.function.Consumer<Json.JObject> fObject, java.util.function.Consumer<Json.JArray> fArray, java.lang.Runnable fNull)voidforEach(java.util.function.BiConsumer<java.lang.String,Json.JValue> f)java.util.Optional<Json.JValue>get(java.lang.String name)<A> java.util.Optional<A>getAs(java.lang.String name, java.util.function.Function<Json.JValue,java.util.Optional<A>> f)java.util.Optional<Json.JArray>getAsArray(java.lang.String name)Json.JArraygetAsArrayOrEmpty(java.lang.String name)java.util.Optional<java.math.BigDecimal>getAsBigDecimal(java.lang.String name)java.util.Optional<java.lang.Boolean>getAsBoolean(java.lang.String name)java.util.Optional<java.lang.Double>getAsDouble(java.lang.String name)java.util.Optional<java.lang.Integer>getAsInteger(java.lang.String name)java.util.Optional<java.lang.Long>getAsLong(java.lang.String name)java.util.Optional<Json.JNumber>getAsNumber(java.lang.String name)java.util.Optional<Json.JObject>getAsObject(java.lang.String name)Json.JObjectgetAsObjectOrEmpty(java.lang.String name)java.util.Optional<java.lang.String>getAsString(java.lang.String name)java.lang.StringgetAsStringOrEmpty(java.lang.String name)Json.JValuegetOrDefault(java.lang.String key, Json.JValue defaultValue)java.util.Map<java.lang.String,Json.JValue>getValue()inthashCode()booleanisEmpty()java.util.Iterator<java.util.Map.Entry<java.lang.String,Json.JValue>>iterator()java.util.Set<java.lang.String>keySet()<B> java.util.List<B>mapToList(java.util.function.BiFunction<java.lang.String,Json.JValue,B> f)<B> java.util.List<B>mapValues(java.util.function.Function<Json.JValue,B> f)Json.JObjectput(java.lang.String name, boolean value)Json.JObjectput(java.lang.String name, double value)Json.JObjectput(java.lang.String name, int value)Json.JObjectput(java.lang.String name, long value)Json.JObjectput(java.lang.String name, java.lang.Number value)Json.JObjectput(java.lang.String name, java.lang.String value)Json.JObjectput(java.lang.String name, java.math.BigDecimal value)Json.JObjectput(java.lang.String name, Json.JValue value)Json.JObjectremove(java.lang.String name)intsize()java.util.stream.Stream<java.util.Map.Entry<java.lang.String,Json.JValue>>stream()java.lang.StringtoString()This is NOT the json representation.java.util.List<Json.JValue>values()-
Methods inherited from class net.hamnaberg.json.Json.JValue
asBigDecimal, asBoolean, asJsonArray, asJsonArrayOrEmpty, asJsonBoolean, asJsonNull, asJsonNumber, asJsonObject, asJsonObjectOrEmpty, asJsonString, asJValue, asString, deepmerge, isArray, isBoolean, isNull, isNumber, isObject, isScalar, isString, mapJson, nospaces, pretty, scalarToString, spaces2, spaces4
-
-
-
-
Field Detail
-
MapCollector
public static final java.util.stream.Collector<java.util.Map.Entry<java.lang.String,Json.JValue>,?,java.util.Map<java.lang.String,Json.JValue>> MapCollector
-
value
public final java.util.Map<java.lang.String,Json.JValue> value
-
-
Method Detail
-
equals
public boolean equals(java.lang.Object o)
- Specified by:
equalsin classJson.JValue
-
hashCode
public int hashCode()
- Specified by:
hashCodein classJson.JValue
-
toString
public java.lang.String toString()
Description copied from class:Json.JValueThis is NOT the json representation. For that you will need to useJson.JValue.pretty(PrettyPrinter).- Specified by:
toStringin classJson.JValue- Returns:
- as String describing the data structure.
-
fold
public <X> X fold(java.util.function.Function<Json.JString,X> fString, java.util.function.Function<Json.JBoolean,X> fBoolean, java.util.function.Function<Json.JNumber,X> fNumber, java.util.function.Function<Json.JObject,X> fObject, java.util.function.Function<Json.JArray,X> fArray, java.util.function.Supplier<X> fNull)
- Specified by:
foldin classJson.JValue
-
foldUnit
public void foldUnit(java.util.function.Consumer<Json.JString> fString, java.util.function.Consumer<Json.JBoolean> fBoolean, java.util.function.Consumer<Json.JNumber> fNumber, java.util.function.Consumer<Json.JObject> fObject, java.util.function.Consumer<Json.JArray> fArray, java.lang.Runnable fNull)
- Specified by:
foldUnitin classJson.JValue
-
getValue
public java.util.Map<java.lang.String,Json.JValue> getValue()
-
get
public java.util.Optional<Json.JValue> get(java.lang.String name)
-
getAs
public <A> java.util.Optional<A> getAs(java.lang.String name, java.util.function.Function<Json.JValue,java.util.Optional<A>> f)
-
getAsString
public java.util.Optional<java.lang.String> getAsString(java.lang.String name)
-
getAsStringOrEmpty
public java.lang.String getAsStringOrEmpty(java.lang.String name)
-
getAsNumber
public java.util.Optional<Json.JNumber> getAsNumber(java.lang.String name)
-
getAsBigDecimal
public java.util.Optional<java.math.BigDecimal> getAsBigDecimal(java.lang.String name)
-
getAsInteger
public java.util.Optional<java.lang.Integer> getAsInteger(java.lang.String name)
-
getAsDouble
public java.util.Optional<java.lang.Double> getAsDouble(java.lang.String name)
-
getAsLong
public java.util.Optional<java.lang.Long> getAsLong(java.lang.String name)
-
getAsBoolean
public java.util.Optional<java.lang.Boolean> getAsBoolean(java.lang.String name)
-
getAsArray
public java.util.Optional<Json.JArray> getAsArray(java.lang.String name)
-
getAsArrayOrEmpty
public Json.JArray getAsArrayOrEmpty(java.lang.String name)
-
getAsObject
public java.util.Optional<Json.JObject> getAsObject(java.lang.String name)
-
getAsObjectOrEmpty
public Json.JObject getAsObjectOrEmpty(java.lang.String name)
-
filter
public Json.JObject filter(java.util.function.BiPredicate<java.lang.String,Json.JValue> predicate)
-
filterKeys
public Json.JObject filterKeys(java.util.function.Predicate<java.lang.String> predicate)
-
filterNot
public Json.JObject filterNot(java.util.function.BiPredicate<java.lang.String,Json.JValue> predicate)
-
isEmpty
public boolean isEmpty()
-
containsKey
public boolean containsKey(java.lang.String key)
-
containsValue
public boolean containsValue(Json.JValue value)
-
values
public java.util.List<Json.JValue> values()
-
forEach
public void forEach(java.util.function.BiConsumer<java.lang.String,Json.JValue> f)
-
mapToList
public <B> java.util.List<B> mapToList(java.util.function.BiFunction<java.lang.String,Json.JValue,B> f)
-
mapValues
public <B> java.util.List<B> mapValues(java.util.function.Function<Json.JValue,B> f)
-
getOrDefault
public Json.JValue getOrDefault(java.lang.String key, Json.JValue defaultValue)
-
size
public int size()
-
keySet
public java.util.Set<java.lang.String> keySet()
-
iterator
public java.util.Iterator<java.util.Map.Entry<java.lang.String,Json.JValue>> iterator()
- Specified by:
iteratorin interfacejava.lang.Iterable<java.util.Map.Entry<java.lang.String,Json.JValue>>
-
stream
public java.util.stream.Stream<java.util.Map.Entry<java.lang.String,Json.JValue>> stream()
-
put
public Json.JObject put(java.lang.String name, Json.JValue value)
-
put
public Json.JObject put(java.lang.String name, java.lang.String value)
-
put
public Json.JObject put(java.lang.String name, java.math.BigDecimal value)
-
put
public Json.JObject put(java.lang.String name, java.lang.Number value)
-
put
public Json.JObject put(java.lang.String name, int value)
-
put
public Json.JObject put(java.lang.String name, long value)
-
put
public Json.JObject put(java.lang.String name, double value)
-
put
public Json.JObject put(java.lang.String name, boolean value)
-
concat
public Json.JObject concat(Json.JObject other)
-
remove
public Json.JObject remove(java.lang.String name)
-
-