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) |
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.
|
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.
|
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)
@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>