public class JsonObject extends JsonElement implements java.util.Map<java.lang.String,JsonElement>
| Modifier and Type | Field and Description |
|---|---|
protected Marshaller |
marshaller |
| Constructor and Description |
|---|
JsonObject() |
| Modifier and Type | Method and Description |
|---|---|
void |
clear() |
JsonObject |
clone() |
boolean |
containsKey(java.lang.Object key) |
boolean |
containsValue(java.lang.Object val) |
java.util.Set<java.util.Map.Entry<java.lang.String,JsonElement>> |
entrySet()
Creates a semi-live shallow copy instead of a live view
|
boolean |
equals(java.lang.Object other) |
<E> E |
get(java.lang.Class<E> clazz,
java.lang.String key) |
JsonElement |
get(java.lang.Object key) |
boolean |
getBoolean(java.lang.String key,
boolean defaultValue) |
byte |
getByte(java.lang.String key,
byte defaultValue) |
char |
getChar(java.lang.String key,
char defaultValue) |
java.lang.String |
getComment(java.lang.String name)
Returns the comment "attached to" a given key-value mapping, which is to say, the comment appearing immediately
before it or the single-line comment to the right of it.
|
JsonObject |
getDelta(JsonObject defaults)
Gets a minimal set of key-value-comment settings which, if added to the supplied JsonObject, would produce this
JsonObject.
|
double |
getDouble(java.lang.String key,
double defaultValue) |
float |
getFloat(java.lang.String key,
float defaultValue) |
int |
getInt(java.lang.String key,
int defaultValue) |
long |
getLong(java.lang.String key,
long defaultValue) |
Marshaller |
getMarshaller() |
JsonObject |
getObject(java.lang.String name)
If there is an entry at this key, and that entry is a json object, return it.
|
short |
getShort(java.lang.String key,
short defaultValue) |
int |
hashCode() |
boolean |
isEmpty() |
java.util.Set<java.lang.String> |
keySet()
Returns a defensive copy instead of a live view
|
JsonElement |
put(java.lang.String key,
JsonElement elem)
Replaces a key-value mapping in this object if it exists, or adds the mapping to the end of the object if it
doesn't.
|
JsonElement |
put(java.lang.String key,
JsonElement elem,
java.lang.String comment)
Replaces a key-value mapping in this object if it exists, or adds the mapping to the end of the object if it
doesn't.
|
void |
putAll(java.util.Map<? extends java.lang.String,? extends JsonElement> map) |
JsonElement |
putDefault(java.lang.String key,
JsonElement elem,
java.lang.String comment) |
<T> T |
putDefault(java.lang.String key,
T elem,
java.lang.Class<? extends T> clazz,
java.lang.String comment)
May return null if the existing object can't be marshalled to the target class
|
<T> T |
putDefault(java.lang.String key,
T elem,
java.lang.String comment)
May return null if the existing object can't be marshalled to elem's class
|
<E> E |
recursiveGet(java.lang.Class<E> clazz,
java.lang.String key)
Gets a (potentially nested) element from this object if it exists.
|
<E extends JsonElement> |
recursiveGetOrCreate(java.lang.Class<E> clazz,
java.lang.String key,
E fallback,
java.lang.String comment)
Gets a (potentially nested) element from this object if it exists, or creates it and any intermediate objects
needed to put it at the indicated location in the hierarchy.
|
JsonElement |
remove(java.lang.Object key) |
void |
setComment(java.lang.String name,
java.lang.String comment) |
void |
setMarshaller(Marshaller marshaller) |
int |
size() |
java.lang.String |
toJson(boolean comments,
boolean newlines,
int depth) |
java.lang.String |
toJson(JsonGrammar grammar,
int depth) |
java.lang.String |
toString() |
java.util.Collection<JsonElement> |
values() |
toJson, toJson, toJsonprotected Marshaller marshaller
@Nullable public JsonObject getObject(@Nonnull java.lang.String name)
public JsonElement put(@Nonnull java.lang.String key, @Nonnull JsonElement elem, @Nullable java.lang.String comment)
@Nonnull public JsonElement putDefault(@Nonnull java.lang.String key, @Nonnull JsonElement elem, @Nullable java.lang.String comment)
@Nullable
public <T> T putDefault(@Nonnull
java.lang.String key,
@Nonnull
T elem,
@Nullable
java.lang.String comment)
@Nullable
public <T> T putDefault(@Nonnull
java.lang.String key,
@Nonnull
T elem,
java.lang.Class<? extends T> clazz,
@Nullable
java.lang.String comment)
@Nonnull public JsonObject getDelta(@Nonnull JsonObject defaults)
@Nullable
public java.lang.String getComment(@Nonnull
java.lang.String name)
public void setComment(@Nonnull
java.lang.String name,
@Nullable
java.lang.String comment)
public java.lang.String toJson(boolean comments,
boolean newlines,
int depth)
toJson in class JsonElementpublic java.lang.String toJson(JsonGrammar grammar, int depth)
toJson in class JsonElementpublic java.lang.String toString()
toString in class java.lang.Objectpublic boolean equals(java.lang.Object other)
equals in interface java.util.Map<java.lang.String,JsonElement>equals in class java.lang.Objectpublic int hashCode()
hashCode in interface java.util.Map<java.lang.String,JsonElement>hashCode in class java.lang.Objectpublic void setMarshaller(Marshaller marshaller)
public Marshaller getMarshaller()
@Nullable
public <E> E get(@Nonnull
java.lang.Class<E> clazz,
@Nonnull
java.lang.String key)
public boolean getBoolean(@Nonnull
java.lang.String key,
boolean defaultValue)
public byte getByte(@Nonnull
java.lang.String key,
byte defaultValue)
public char getChar(@Nonnull
java.lang.String key,
char defaultValue)
public short getShort(@Nonnull
java.lang.String key,
short defaultValue)
public int getInt(@Nonnull
java.lang.String key,
int defaultValue)
public long getLong(@Nonnull
java.lang.String key,
long defaultValue)
public float getFloat(@Nonnull
java.lang.String key,
float defaultValue)
public double getDouble(@Nonnull
java.lang.String key,
double defaultValue)
@Nullable
public <E> E recursiveGet(@Nonnull
java.lang.Class<E> clazz,
@Nonnull
java.lang.String key)
clazz - The expected class of the elementkey - The keys of the nested elements, separated by periods, such as "foo.bar.baz"public <E extends JsonElement> E recursiveGetOrCreate(@Nonnull java.lang.Class<E> clazz, @Nonnull java.lang.String key, @Nonnull E fallback, @Nullable java.lang.String comment)
clazz - The expected class of the elementkey - The keys of the nested elements, separated by periods, such as "foo.bar.baz"public JsonObject clone()
clone in class JsonElement@Nullable public JsonElement put(@Nonnull java.lang.String key, @Nonnull JsonElement elem)
put in interface java.util.Map<java.lang.String,JsonElement>public void clear()
clear in interface java.util.Map<java.lang.String,JsonElement>public boolean containsKey(@Nullable
java.lang.Object key)
containsKey in interface java.util.Map<java.lang.String,JsonElement>public boolean containsValue(@Nullable
java.lang.Object val)
containsValue in interface java.util.Map<java.lang.String,JsonElement>public java.util.Set<java.util.Map.Entry<java.lang.String,JsonElement>> entrySet()
entrySet in interface java.util.Map<java.lang.String,JsonElement>@Nullable public JsonElement get(@Nullable java.lang.Object key)
get in interface java.util.Map<java.lang.String,JsonElement>public boolean isEmpty()
isEmpty in interface java.util.Map<java.lang.String,JsonElement>@Nonnull public java.util.Set<java.lang.String> keySet()
keySet in interface java.util.Map<java.lang.String,JsonElement>public void putAll(java.util.Map<? extends java.lang.String,? extends JsonElement> map)
putAll in interface java.util.Map<java.lang.String,JsonElement>@Nullable public JsonElement remove(@Nullable java.lang.Object key)
remove in interface java.util.Map<java.lang.String,JsonElement>public int size()
size in interface java.util.Map<java.lang.String,JsonElement>public java.util.Collection<JsonElement> values()
values in interface java.util.Map<java.lang.String,JsonElement>