org.h2.util.json

## Class JSONTarget<R>

- java.lang.Object
- - org.h2.util.json.JSONTarget<R>

Type Parameters:
  `R` - the type of the result

Direct Known Subclasses:
  JSONByteArrayTarget, JSONStringTarget, JSONValidationTarget, JSONValueTarget

    public abstract class JSONTarget<R>
    extends java.lang.Object

Abstract JSON output target.

### Constructor Summary

Constructors
Constructor and Description
`JSONTarget()`

### Method Summary

Methods
`abstract void` `endArray()` End of the current array.
`abstract void` `endObject()` End of the current object.
`abstract R` `getResult()` Returns the result.
`abstract boolean` `isPropertyExpected()` Returns whether member's name or the end of the current object is expected.
`abstract boolean` `isValueSeparatorExpected()` Returns whether value separator expected before the next member or value.
`abstract void` `member(java.lang.String name)` Name of a member.
`abstract void` `startArray()` Start of an array.
`abstract void` `startObject()` Start of an object.
`abstract void` `valueFalse()` Parse "false".
`abstract void` `valueNull()` Parse "null".
`abstract void` `valueNumber(java.math.BigDecimal number)` A number value.
`abstract void` `valueString(java.lang.String string)` A string value.
`abstract void` `valueTrue()` Parse "true".

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### JSONTarget

    public JSONTarget()

### Method Detail

#### startObject

    public abstract void startObject()

Start of an object.

#### endObject

    public abstract void endObject()

End of the current object.

#### startArray

    public abstract void startArray()

Start of an array.

#### endArray

    public abstract void endArray()

End of the current array.

#### member

    public abstract void member(java.lang.String name)

Name of a member.

Parameters:
  `name` - the name

#### valueNull

    public abstract void valueNull()

Parse "null". `null` value.

#### valueFalse

    public abstract void valueFalse()

Parse "false". `false` value.

#### valueTrue

    public abstract void valueTrue()

Parse "true". `true` value.

#### valueNumber

    public abstract void valueNumber(java.math.BigDecimal number)

A number value.

Parameters:
  `number` - the number

#### valueString

    public abstract void valueString(java.lang.String string)

A string value.

Parameters:
  `string` - the string

#### isPropertyExpected

    public abstract boolean isPropertyExpected()

Returns whether member's name or the end of the current object is expected.

Returns:
  `true` if it is, `false` otherwise

#### isValueSeparatorExpected

    public abstract boolean isValueSeparatorExpected()

Returns whether value separator expected before the next member or value.

Returns:
  `true` if it is, `false` otherwise

#### getResult

    public abstract R getResult()

Returns the result.

Returns:
  the result