public static class StreamingJsonBuilder.StreamingJsonDelegate extends GroovyObjectSupport
The delegate used when invoking closures
Modifiers | Name | Description |
---|---|---|
protected boolean |
first |
|
protected StreamingJsonBuilder.StreamingJsonDelegate.State |
state |
|
protected Writer |
writer |
Constructor and description |
---|
StreamingJsonDelegate
(Writer w, boolean first) |
StreamingJsonDelegate
(Writer w, boolean first, JsonGenerator generator) |
Type Params | Return Type | Name and description |
---|---|---|
|
void |
call(String name, List<Object> list) Writes the name and a JSON array |
|
void |
call(String name, Object array) Writes the name and a JSON array |
|
void |
call(String name, Iterable coll, Closure c) A collection and closure passed to a JSON builder will create a root JSON array applying the closure to each object in the collection |
|
void |
call(String name, Collection coll, Closure c) Delegates to call(String, Iterable, Closure) |
|
void |
call(String name, Object value) Writes the name and value of a JSON attribute |
|
void |
call(String name, Object value, Closure callable) Writes the name and value of a JSON attribute |
|
void |
call(String name, Closure value) Writes the name and another JSON object |
|
void |
call(String name, JsonUnescaped json) Writes an unescaped value. |
|
void |
call(String name, Writable json) Writes the given Writable as the value of the given attribute name |
|
static void |
cloneDelegateAndGetContent(Writer w, Closure c) |
|
static void |
cloneDelegateAndGetContent(Writer w, Closure c, boolean first) |
|
static void |
curryDelegateAndGetContent(Writer w, Closure c, Object o) |
|
static void |
curryDelegateAndGetContent(Writer w, Closure c, Object o, boolean first) |
|
Writer |
getWriter()
|
|
Object |
invokeMethod(String name, Object args) |
|
static boolean |
isCollectionWithClosure(Object[] args) |
|
protected void |
verifyValue() |
|
protected void |
writeArray(List<Object> list) |
|
static Object |
writeCollectionWithClosure(Writer writer, Collection coll, Closure closure) |
|
protected void |
writeName(String name) |
|
protected void |
writeValue(Object value) |
Methods inherited from class | Name |
---|---|
class GroovyObjectSupport |
getMetaClass, setMetaClass |
Writes the name and a JSON array
name
- The name of the JSON attributelist
- The list representing the arrayWrites the name and a JSON array
name
- The name of the JSON attributearray
- The list representing the arrayA collection and closure passed to a JSON builder will create a root JSON array applying the closure to each object in the collection
Example:
class Author { String name } def authorList = [new Author (name: "Guillaume"), new Author (name: "Jochen"), new Author (name: "Paul")] new StringWriter().with { w->
def json = new groovy.json.StreamingJsonBuilder(w) json.book { authors authorList, { Author author->
name author.name } } assert w.toString() == '{"book":{"authors":[{"name":"Guillaume"},{"name":"Jochen"},{"name":"Paul"}]}}' }
coll
- a collectionc
- a closure used to convert the objects of collDelegates to call(String, Iterable, Closure)
Writes the name and value of a JSON attribute
name
- The attribute namevalue
- The valueWrites the name and value of a JSON attribute
name
- The attribute namevalue
- The valueWrites the name and another JSON object
name
- The attribute namevalue
- The valueWrites an unescaped value. Note: can cause invalid JSON if passed JSON is invalid
name
- The attribute namejson
- The valueWrites the given Writable as the value of the given attribute name
name
- The attribute namejson
- The writable value
Copyright © 2003-2020 The Apache Software Foundation. All rights reserved.