Package org.apache.johnzon.core
Class JsonGeneratorImpl
- java.lang.Object
-
- org.apache.johnzon.core.JsonGeneratorImpl
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
JsonGeneratorImpl.GeneratorState
-
Field Summary
Fields Modifier and Type Field Description private char[]
buffer
private int
bufferPos
private BufferStrategy.BufferProvider<char[]>
bufferProvider
private boolean
closed
private int
depth
private static java.lang.String
INDENT
private boolean
prettyPrint
private HStack<JsonGeneratorImpl.GeneratorState>
state
private static java.lang.String
UNICODE_PREFIX
private static java.lang.String
UNICODE_PREFIX_HELPER
private static java.nio.charset.Charset
UTF8_CHARSET
private java.io.Writer
writer
-
Fields inherited from interface org.apache.johnzon.core.JsonChars
BACKSPACE, COMMA_CHAR, COMMA_EVENT, CR, DOT, END_ARRAY, END_ARRAY_CHAR, END_OBJECT, END_OBJECT_CHAR, EOF, EOL, ESCAPE_CHAR, EVT_MAP, EXP_LOWERCASE, EXP_UPPERCASE, FALSE_A, FALSE_E, FALSE_F, FALSE_L, FALSE_S, FORMFEED, KEY_NAME, KEY_SEPARATOR, KEY_SEPARATOR_EVENT, MINUS, NINE, NULL, NULL_L, NULL_N, NULL_U, PLUS, QUOTE_CHAR, SPACE, START_ARRAY, START_ARRAY_CHAR, START_OBJECT, START_OBJECT_CHAR, TAB, TRUE_E, TRUE_R, TRUE_T, TRUE_U, VALUE_FALSE, VALUE_NULL, VALUE_NUMBER, VALUE_STRING, VALUE_TRUE, ZERO
-
-
Constructor Summary
Constructors Constructor Description JsonGeneratorImpl(java.io.OutputStream out, java.nio.charset.Charset encoding, BufferStrategy.BufferProvider<char[]> bufferProvider, boolean prettyPrint)
JsonGeneratorImpl(java.io.OutputStream out, BufferStrategy.BufferProvider<char[]> bufferProvider, boolean prettyPrint)
JsonGeneratorImpl(java.io.Writer writer, BufferStrategy.BufferProvider<char[]> bufferProvider, boolean prettyPrint)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
alignState()
private void
checkArrayOrValue()
private static void
checkDoubleRange(double value)
private void
checkObject()
void
close()
private JsonGeneratorImpl.GeneratorState
currentState()
void
flush()
private void
flushBuffer()
private void
justWrite(char value)
private void
justWrite(java.lang.String value)
private void
prepareValue()
private void
swapState(JsonGeneratorImpl.GeneratorState newState)
private static java.lang.String
toUnicode(char c)
javax.json.stream.JsonGenerator
write(boolean value)
javax.json.stream.JsonGenerator
write(double value)
javax.json.stream.JsonGenerator
write(int value)
javax.json.stream.JsonGenerator
write(long value)
javax.json.stream.JsonGenerator
write(java.lang.String value)
javax.json.stream.JsonGenerator
write(java.lang.String name, boolean value)
javax.json.stream.JsonGenerator
write(java.lang.String name, double value)
javax.json.stream.JsonGenerator
write(java.lang.String name, int value)
javax.json.stream.JsonGenerator
write(java.lang.String name, long value)
javax.json.stream.JsonGenerator
write(java.lang.String name, java.lang.String value)
javax.json.stream.JsonGenerator
write(java.lang.String name, java.math.BigDecimal value)
javax.json.stream.JsonGenerator
write(java.lang.String name, java.math.BigInteger value)
javax.json.stream.JsonGenerator
write(java.lang.String name, javax.json.JsonValue value)
javax.json.stream.JsonGenerator
write(java.math.BigDecimal value)
javax.json.stream.JsonGenerator
write(java.math.BigInteger value)
javax.json.stream.JsonGenerator
write(javax.json.JsonValue value)
private void
writeCachedKey(java.lang.String name)
javax.json.stream.JsonGenerator
writeEnd()
private void
writeEol()
private void
writeEscaped0(java.lang.String value)
private void
writeIndent()
private void
writeInt0(int i)
private void
writeJsonValue(java.lang.String name, javax.json.JsonValue value)
private void
writeJsonValue(javax.json.JsonValue value)
javax.json.stream.JsonGenerator
writeKey(java.lang.String key)
private void
writeLong0(long i)
javax.json.stream.JsonGenerator
writeNull()
javax.json.stream.JsonGenerator
writeNull(java.lang.String name)
javax.json.stream.JsonGenerator
writeStartArray()
javax.json.stream.JsonGenerator
writeStartArray(java.lang.String name)
javax.json.stream.JsonGenerator
writeStartObject()
javax.json.stream.JsonGenerator
writeStartObject(java.lang.String name)
private void
writeValue(int value)
private void
writeValue(long value)
private void
writeValue(java.lang.String value)
private void
writeValueAsJsonString(java.lang.String value)
-
-
-
Field Detail
-
UTF8_CHARSET
private static final java.nio.charset.Charset UTF8_CHARSET
-
writer
private final transient java.io.Writer writer
-
bufferProvider
private final BufferStrategy.BufferProvider<char[]> bufferProvider
-
buffer
private final char[] buffer
-
bufferPos
private int bufferPos
-
prettyPrint
private final boolean prettyPrint
-
INDENT
private static final java.lang.String INDENT
- See Also:
- Constant Field Values
-
depth
private int depth
-
closed
private boolean closed
-
state
private final HStack<JsonGeneratorImpl.GeneratorState> state
-
UNICODE_PREFIX
private static final java.lang.String UNICODE_PREFIX
- See Also:
- Constant Field Values
-
UNICODE_PREFIX_HELPER
private static final java.lang.String UNICODE_PREFIX_HELPER
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
JsonGeneratorImpl
JsonGeneratorImpl(java.io.Writer writer, BufferStrategy.BufferProvider<char[]> bufferProvider, boolean prettyPrint)
-
JsonGeneratorImpl
JsonGeneratorImpl(java.io.OutputStream out, BufferStrategy.BufferProvider<char[]> bufferProvider, boolean prettyPrint)
-
JsonGeneratorImpl
JsonGeneratorImpl(java.io.OutputStream out, java.nio.charset.Charset encoding, BufferStrategy.BufferProvider<char[]> bufferProvider, boolean prettyPrint)
-
-
Method Detail
-
writeEol
private void writeEol()
-
writeIndent
private void writeIndent()
-
writeCachedKey
private void writeCachedKey(java.lang.String name)
-
writeStartObject
public javax.json.stream.JsonGenerator writeStartObject()
- Specified by:
writeStartObject
in interfacejavax.json.stream.JsonGenerator
-
writeStartObject
public javax.json.stream.JsonGenerator writeStartObject(java.lang.String name)
- Specified by:
writeStartObject
in interfacejavax.json.stream.JsonGenerator
-
writeStartArray
public javax.json.stream.JsonGenerator writeStartArray()
- Specified by:
writeStartArray
in interfacejavax.json.stream.JsonGenerator
-
writeStartArray
public javax.json.stream.JsonGenerator writeStartArray(java.lang.String name)
- Specified by:
writeStartArray
in interfacejavax.json.stream.JsonGenerator
-
writeJsonValue
private void writeJsonValue(java.lang.String name, javax.json.JsonValue value)
-
writeJsonValue
private void writeJsonValue(javax.json.JsonValue value)
-
write
public javax.json.stream.JsonGenerator write(java.lang.String name, javax.json.JsonValue value)
- Specified by:
write
in interfacejavax.json.stream.JsonGenerator
-
write
public javax.json.stream.JsonGenerator write(java.lang.String name, java.lang.String value)
- Specified by:
write
in interfacejavax.json.stream.JsonGenerator
-
write
public javax.json.stream.JsonGenerator write(java.lang.String name, java.math.BigInteger value)
- Specified by:
write
in interfacejavax.json.stream.JsonGenerator
-
write
public javax.json.stream.JsonGenerator write(java.lang.String name, java.math.BigDecimal value)
- Specified by:
write
in interfacejavax.json.stream.JsonGenerator
-
write
public javax.json.stream.JsonGenerator write(java.lang.String name, int value)
- Specified by:
write
in interfacejavax.json.stream.JsonGenerator
-
write
public javax.json.stream.JsonGenerator write(java.lang.String name, long value)
- Specified by:
write
in interfacejavax.json.stream.JsonGenerator
-
write
public javax.json.stream.JsonGenerator write(java.lang.String name, double value)
- Specified by:
write
in interfacejavax.json.stream.JsonGenerator
-
write
public javax.json.stream.JsonGenerator write(java.lang.String name, boolean value)
- Specified by:
write
in interfacejavax.json.stream.JsonGenerator
-
writeNull
public javax.json.stream.JsonGenerator writeNull(java.lang.String name)
- Specified by:
writeNull
in interfacejavax.json.stream.JsonGenerator
-
writeEnd
public javax.json.stream.JsonGenerator writeEnd()
- Specified by:
writeEnd
in interfacejavax.json.stream.JsonGenerator
-
write
public javax.json.stream.JsonGenerator write(javax.json.JsonValue value)
- Specified by:
write
in interfacejavax.json.stream.JsonGenerator
-
write
public javax.json.stream.JsonGenerator write(java.lang.String value)
- Specified by:
write
in interfacejavax.json.stream.JsonGenerator
-
write
public javax.json.stream.JsonGenerator write(java.math.BigDecimal value)
- Specified by:
write
in interfacejavax.json.stream.JsonGenerator
-
write
public javax.json.stream.JsonGenerator write(java.math.BigInteger value)
- Specified by:
write
in interfacejavax.json.stream.JsonGenerator
-
write
public javax.json.stream.JsonGenerator write(int value)
- Specified by:
write
in interfacejavax.json.stream.JsonGenerator
-
write
public javax.json.stream.JsonGenerator write(long value)
- Specified by:
write
in interfacejavax.json.stream.JsonGenerator
-
write
public javax.json.stream.JsonGenerator write(double value)
- Specified by:
write
in interfacejavax.json.stream.JsonGenerator
-
write
public javax.json.stream.JsonGenerator write(boolean value)
- Specified by:
write
in interfacejavax.json.stream.JsonGenerator
-
writeNull
public javax.json.stream.JsonGenerator writeNull()
- Specified by:
writeNull
in interfacejavax.json.stream.JsonGenerator
-
writeKey
public javax.json.stream.JsonGenerator writeKey(java.lang.String key)
- Specified by:
writeKey
in interfacejavax.json.stream.JsonGenerator
-
close
public void close()
- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
- Specified by:
close
in interfacejavax.json.stream.JsonGenerator
-
flush
public void flush()
- Specified by:
flush
in interfacejava.io.Flushable
- Specified by:
flush
in interfacejavax.json.stream.JsonGenerator
-
flushBuffer
private void flushBuffer()
-
writeEscaped0
private void writeEscaped0(java.lang.String value)
-
toUnicode
private static java.lang.String toUnicode(char c)
-
justWrite
private void justWrite(java.lang.String value)
-
justWrite
private void justWrite(char value)
-
checkObject
private void checkObject()
-
checkArrayOrValue
private void checkArrayOrValue()
-
checkDoubleRange
private static void checkDoubleRange(double value)
-
prepareValue
private void prepareValue()
-
alignState
private void alignState()
-
swapState
private void swapState(JsonGeneratorImpl.GeneratorState newState)
-
currentState
private JsonGeneratorImpl.GeneratorState currentState()
-
writeValueAsJsonString
private void writeValueAsJsonString(java.lang.String value)
-
writeValue
private void writeValue(java.lang.String value)
-
writeValue
private void writeValue(int value)
-
writeValue
private void writeValue(long value)
-
writeLong0
private void writeLong0(long i)
-
writeInt0
private void writeInt0(int i)
-
-