Package org.apache.johnzon.mapper.jsonp
Class DeferredStartJsonGenerator
- java.lang.Object
-
- org.apache.johnzon.mapper.jsonp.DeferredStartJsonGenerator
-
- All Implemented Interfaces:
jakarta.json.stream.JsonGenerator,Closeable,Flushable,AutoCloseable
public class DeferredStartJsonGenerator extends Object implements jakarta.json.stream.JsonGenerator
This JsonGenerator will not automatically write a startObject '{' character, but only if needed. ThewriteEnd()method will only write a closing '}' if a start has been written before. This class must only be used in cases where you would calljsonGenerator.startObject(key)!
-
-
Constructor Summary
Constructors Constructor Description DeferredStartJsonGenerator(jakarta.json.stream.JsonGenerator delegate, String key)Deferred start for ObjectsDeferredStartJsonGenerator(jakarta.json.stream.JsonGenerator delegate, String key, boolean array)JsonGenerator which only writes a start character if an embedded json structure is later written.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()private voidensureStart()voidflush()jakarta.json.stream.JsonGeneratorwrite(boolean value)jakarta.json.stream.JsonGeneratorwrite(double value)jakarta.json.stream.JsonGeneratorwrite(int value)jakarta.json.stream.JsonGeneratorwrite(long value)jakarta.json.stream.JsonGeneratorwrite(jakarta.json.JsonValue value)jakarta.json.stream.JsonGeneratorwrite(String value)jakarta.json.stream.JsonGeneratorwrite(String name, boolean value)jakarta.json.stream.JsonGeneratorwrite(String name, double value)jakarta.json.stream.JsonGeneratorwrite(String name, int value)jakarta.json.stream.JsonGeneratorwrite(String name, long value)jakarta.json.stream.JsonGeneratorwrite(String name, jakarta.json.JsonValue value)jakarta.json.stream.JsonGeneratorwrite(String name, String value)jakarta.json.stream.JsonGeneratorwrite(String name, BigDecimal value)jakarta.json.stream.JsonGeneratorwrite(String name, BigInteger value)jakarta.json.stream.JsonGeneratorwrite(BigDecimal value)jakarta.json.stream.JsonGeneratorwrite(BigInteger value)jakarta.json.stream.JsonGeneratorwriteEnd()jakarta.json.stream.JsonGeneratorwriteKey(String name)jakarta.json.stream.JsonGeneratorwriteNull()jakarta.json.stream.JsonGeneratorwriteNull(String name)jakarta.json.stream.JsonGeneratorwriteStartArray()jakarta.json.stream.JsonGeneratorwriteStartArray(String name)jakarta.json.stream.JsonGeneratorwriteStartObject()jakarta.json.stream.JsonGeneratorwriteStartObject(String name)
-
-
-
Field Detail
-
delegate
private final jakarta.json.stream.JsonGenerator delegate
-
key
private final String key
-
array
private final boolean array
-
started
private boolean started
-
empty
private boolean empty
-
depth
private int depth
-
-
Constructor Detail
-
DeferredStartJsonGenerator
public DeferredStartJsonGenerator(jakarta.json.stream.JsonGenerator delegate, String key)Deferred start for Objects
-
DeferredStartJsonGenerator
public DeferredStartJsonGenerator(jakarta.json.stream.JsonGenerator delegate, String key, boolean array)JsonGenerator which only writes a start character if an embedded json structure is later written.- Parameters:
delegate- JsonGenerator which really writeskey- for the startObject, ornullif no key should be usedarray- iftruewe will use a start with a '[', otherwise with an object start '{'
-
-
Method Detail
-
ensureStart
private void ensureStart()
-
close
public void close()
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein interfacejakarta.json.stream.JsonGenerator
-
flush
public void flush()
-
write
public jakarta.json.stream.JsonGenerator write(String name, BigDecimal value)
- Specified by:
writein interfacejakarta.json.stream.JsonGenerator
-
write
public jakarta.json.stream.JsonGenerator write(String name, BigInteger value)
- Specified by:
writein interfacejakarta.json.stream.JsonGenerator
-
write
public jakarta.json.stream.JsonGenerator write(String name, boolean value)
- Specified by:
writein interfacejakarta.json.stream.JsonGenerator
-
write
public jakarta.json.stream.JsonGenerator write(String name, double value)
- Specified by:
writein interfacejakarta.json.stream.JsonGenerator
-
write
public jakarta.json.stream.JsonGenerator write(String name, int value)
- Specified by:
writein interfacejakarta.json.stream.JsonGenerator
-
write
public jakarta.json.stream.JsonGenerator write(String name, jakarta.json.JsonValue value)
- Specified by:
writein interfacejakarta.json.stream.JsonGenerator
-
write
public jakarta.json.stream.JsonGenerator write(String name, long value)
- Specified by:
writein interfacejakarta.json.stream.JsonGenerator
-
write
public jakarta.json.stream.JsonGenerator write(String name, String value)
- Specified by:
writein interfacejakarta.json.stream.JsonGenerator
-
write
public jakarta.json.stream.JsonGenerator write(BigDecimal value)
- Specified by:
writein interfacejakarta.json.stream.JsonGenerator
-
write
public jakarta.json.stream.JsonGenerator write(BigInteger value)
- Specified by:
writein interfacejakarta.json.stream.JsonGenerator
-
write
public jakarta.json.stream.JsonGenerator write(boolean value)
- Specified by:
writein interfacejakarta.json.stream.JsonGenerator
-
write
public jakarta.json.stream.JsonGenerator write(double value)
- Specified by:
writein interfacejakarta.json.stream.JsonGenerator
-
write
public jakarta.json.stream.JsonGenerator write(int value)
- Specified by:
writein interfacejakarta.json.stream.JsonGenerator
-
write
public jakarta.json.stream.JsonGenerator write(jakarta.json.JsonValue value)
- Specified by:
writein interfacejakarta.json.stream.JsonGenerator
-
write
public jakarta.json.stream.JsonGenerator write(long value)
- Specified by:
writein interfacejakarta.json.stream.JsonGenerator
-
write
public jakarta.json.stream.JsonGenerator write(String value)
- Specified by:
writein interfacejakarta.json.stream.JsonGenerator
-
writeEnd
public jakarta.json.stream.JsonGenerator writeEnd()
- Specified by:
writeEndin interfacejakarta.json.stream.JsonGenerator
-
writeKey
public jakarta.json.stream.JsonGenerator writeKey(String name)
- Specified by:
writeKeyin interfacejakarta.json.stream.JsonGenerator
-
writeNull
public jakarta.json.stream.JsonGenerator writeNull()
- Specified by:
writeNullin interfacejakarta.json.stream.JsonGenerator
-
writeNull
public jakarta.json.stream.JsonGenerator writeNull(String name)
- Specified by:
writeNullin interfacejakarta.json.stream.JsonGenerator
-
writeStartArray
public jakarta.json.stream.JsonGenerator writeStartArray()
- Specified by:
writeStartArrayin interfacejakarta.json.stream.JsonGenerator
-
writeStartArray
public jakarta.json.stream.JsonGenerator writeStartArray(String name)
- Specified by:
writeStartArrayin interfacejakarta.json.stream.JsonGenerator
-
writeStartObject
public jakarta.json.stream.JsonGenerator writeStartObject()
- Specified by:
writeStartObjectin interfacejakarta.json.stream.JsonGenerator
-
writeStartObject
public jakarta.json.stream.JsonGenerator writeStartObject(String name)
- Specified by:
writeStartObjectin interfacejakarta.json.stream.JsonGenerator
-
-