Package org.h2.util.json
Class JSONByteArrayTarget
- java.lang.Object
-
- org.h2.util.json.JSONTarget<byte[]>
-
- org.h2.util.json.JSONByteArrayTarget
-
public final class JSONByteArrayTarget extends JSONTarget<byte[]>
JSON byte array target.
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
afterName
private java.io.ByteArrayOutputStream
baos
private static byte[]
FALSE_BYTES
private boolean
needSeparator
private static byte[]
NULL_BYTES
private ByteStack
stack
private static byte[]
TRUE_BYTES
private static byte[]
U00_BYTES
-
Constructor Summary
Constructors Constructor Description JSONByteArrayTarget()
Creates new instance of JSON byte array target.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
afterValue()
private void
beforeValue()
static java.io.ByteArrayOutputStream
encodeString(java.io.ByteArrayOutputStream baos, java.lang.String s)
Encodes a JSON string and appends it to the specified output stream.void
endArray()
End of the current array.void
endObject()
End of the current object.byte[]
getResult()
Returns the result.boolean
isPropertyExpected()
Returns whether member's name or the end of the current object is expected.boolean
isValueSeparatorExpected()
Returns whether value separator expected before the next member or value.void
member(java.lang.String name)
Name of a member.void
startArray()
Start of an array.void
startObject()
Start of an object.void
valueFalse()
Parse "false".void
valueNull()
Parse "null".void
valueNumber(java.math.BigDecimal number)
A number value.void
valueString(java.lang.String string)
A string value.void
valueTrue()
Parse "true".
-
-
-
Field Detail
-
NULL_BYTES
private static final byte[] NULL_BYTES
-
FALSE_BYTES
private static final byte[] FALSE_BYTES
-
TRUE_BYTES
private static final byte[] TRUE_BYTES
-
U00_BYTES
private static final byte[] U00_BYTES
-
baos
private final java.io.ByteArrayOutputStream baos
-
stack
private final ByteStack stack
-
needSeparator
private boolean needSeparator
-
afterName
private boolean afterName
-
-
Method Detail
-
encodeString
public static java.io.ByteArrayOutputStream encodeString(java.io.ByteArrayOutputStream baos, java.lang.String s)
Encodes a JSON string and appends it to the specified output stream.- Parameters:
baos
- the output stream to append tos
- the string to encode- Returns:
- the specified output stream
-
startObject
public void startObject()
Description copied from class:JSONTarget
Start of an object.- Specified by:
startObject
in classJSONTarget<byte[]>
-
endObject
public void endObject()
Description copied from class:JSONTarget
End of the current object.- Specified by:
endObject
in classJSONTarget<byte[]>
-
startArray
public void startArray()
Description copied from class:JSONTarget
Start of an array.- Specified by:
startArray
in classJSONTarget<byte[]>
-
endArray
public void endArray()
Description copied from class:JSONTarget
End of the current array.- Specified by:
endArray
in classJSONTarget<byte[]>
-
member
public void member(java.lang.String name)
Description copied from class:JSONTarget
Name of a member.- Specified by:
member
in classJSONTarget<byte[]>
- Parameters:
name
- the name
-
valueNull
public void valueNull()
Description copied from class:JSONTarget
Parse "null".null
value.- Specified by:
valueNull
in classJSONTarget<byte[]>
-
valueFalse
public void valueFalse()
Description copied from class:JSONTarget
Parse "false".false
value.- Specified by:
valueFalse
in classJSONTarget<byte[]>
-
valueTrue
public void valueTrue()
Description copied from class:JSONTarget
Parse "true".true
value.- Specified by:
valueTrue
in classJSONTarget<byte[]>
-
valueNumber
public void valueNumber(java.math.BigDecimal number)
Description copied from class:JSONTarget
A number value.- Specified by:
valueNumber
in classJSONTarget<byte[]>
- Parameters:
number
- the number
-
valueString
public void valueString(java.lang.String string)
Description copied from class:JSONTarget
A string value.- Specified by:
valueString
in classJSONTarget<byte[]>
- Parameters:
string
- the string
-
beforeValue
private void beforeValue()
-
afterValue
private void afterValue()
-
isPropertyExpected
public boolean isPropertyExpected()
Description copied from class:JSONTarget
Returns whether member's name or the end of the current object is expected.- Specified by:
isPropertyExpected
in classJSONTarget<byte[]>
- Returns:
true
if it is,false
otherwise
-
isValueSeparatorExpected
public boolean isValueSeparatorExpected()
Description copied from class:JSONTarget
Returns whether value separator expected before the next member or value.- Specified by:
isValueSeparatorExpected
in classJSONTarget<byte[]>
- Returns:
true
if it is,false
otherwise
-
getResult
public byte[] getResult()
Description copied from class:JSONTarget
Returns the result.- Specified by:
getResult
in classJSONTarget<byte[]>
- Returns:
- the result
-
-