public final class CollectionCollector extends java.lang.Object implements StructureCollector<java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>>
HashMap, ArrayList, and
null instances. The result types are finished using
Collections.unmodifiableMap() and Collections.unmodifiableList().
This collector holds no state, so a singleton is provided.
| Modifier and Type | Field and Description |
|---|---|
static CollectionCollector |
INSTANCE
The singleton instance of this collector.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addNull(java.util.List<java.lang.Object> array)
Adds a Java
null value to the given JSON array. |
void |
addNull(java.util.Map<java.lang.String,java.lang.Object> object,
java.lang.String key)
Adds a Java
null value an an entry to the given JSON object. |
void |
addValue(java.util.List<java.lang.Object> array,
java.lang.Object value)
Adds the given value to the given JSON array accumulator.
|
void |
addValue(java.util.Map<java.lang.String,java.lang.Object> object,
java.lang.String key,
java.lang.Object value)
Adds the given entry to the given JSON object.
|
java.util.List<java.lang.Object> |
createArrayAccumulator()
Create a new
ArrayList into which JSON array entries are added. |
java.util.Map<java.lang.String,java.lang.Object> |
createObjectAccumulator()
Create a new
HashMap into which JSON object entries are added. |
java.util.List<java.lang.Object> |
finishArray(java.util.List<java.lang.Object> accumulator)
Finish the given JSON array accumulator, returning the array result.
|
java.util.Map<java.lang.String,java.lang.Object> |
finishObject(java.util.Map<java.lang.String,java.lang.Object> accumulator)
Finish the given JSON object accumulator, returning the object result.
|
java.lang.Object |
nullValue()
Provide a null value for circumstances where JSON null is the complete
result of a JSON parse.
|
public static final CollectionCollector INSTANCE
public java.util.Map<java.lang.String,java.lang.Object> createObjectAccumulator()
HashMap into which JSON object entries are added.createObjectAccumulator in interface StructureCollector<java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>>HashMap instancepublic void addValue(java.util.Map<java.lang.String,java.lang.Object> object,
java.lang.String key,
java.lang.Object value)
throws JSONException
StructureCollectoraddValue in interface StructureCollector<java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>>object - the JSON object accumulator to which the entry will be addedkey - the key of the entryvalue - the value of the entryJSONException - may be thrown if a duplicate key is encounteredpublic void addNull(java.util.Map<java.lang.String,java.lang.Object> object,
java.lang.String key)
throws JSONException
null value an an entry to the given JSON object.addNull in interface StructureCollector<java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>>object - the target to which the entry will be addedkey - the key of the entryJSONException - a duplicate key is encounteredpublic java.util.Map<java.lang.String,java.lang.Object> finishObject(java.util.Map<java.lang.String,java.lang.Object> accumulator)
Map.finishObject in interface StructureCollector<java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>>accumulator - the JSON object accumulator to be finishedMappublic java.util.List<java.lang.Object> createArrayAccumulator()
ArrayList into which JSON array entries are added.createArrayAccumulator in interface StructureCollector<java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>>ArrayList instancepublic void addValue(java.util.List<java.lang.Object> array,
java.lang.Object value)
StructureCollectoraddValue in interface StructureCollector<java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>>array - the JSON array accumulator to which the value will be addedvalue - the value to be addedpublic void addNull(java.util.List<java.lang.Object> array)
null value to the given JSON array.addNull in interface StructureCollector<java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>>array - the target to which the null value will be addedpublic java.util.List<java.lang.Object> finishArray(java.util.List<java.lang.Object> accumulator)
List.finishArray in interface StructureCollector<java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>>accumulator - the JSON array accumulator to be finishedListpublic java.lang.Object nullValue()
StructureCollectornullValue in interface StructureCollector<java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>,java.util.Map<java.lang.String,java.lang.Object>,java.util.List<java.lang.Object>>