java.lang.Object
org.jooq.JSONFormat
A JSON formatting type, which can be used to configure JSON imports /
exports.
The default format is the following, using header()
equal to
true
and applying JSONFormat.RecordFormat.ARRAY
:
{"fields":[{"name":"field-1","type":"type-1"},
{"name":"field-2","type":"type-2"},
...,
{"name":"field-n","type":"type-n"}],
"records":[[value-1-1,value-1-2,...,value-1-n],
[value-2-1,value-2-2,...,value-2-n]]}
If header()
is set to false
, then the result is simply
the records array, either using JSONFormat.RecordFormat.ARRAY
:
[[value-1-1,value-1-2,...,value-1-n],
[value-2-1,value-2-2,...,value-2-n]]
or, using JSONFormat.RecordFormat.OBJECT
:
[{"field-1": value-1-1, "field-2": value-1-2,..., "field-n": value-1-n},
{"field-1": value-2-1, "field-2": value-2-2,..., "field-n": value-2-n}]
The type is immutable, meaning calls to setters like header(boolean)
do not modify the original reference, but return a new one instead.
- Author:
- Lukas Eder
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic enum
The format of individual JSON records. -
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionfinal boolean
format()
The formatting flag.final @NotNull JSONFormat
format
(boolean newFormat) The new value for the formatting flag, defaulting tofalse
.final int
The global indentation applied on all levels.final @NotNull JSONFormat
globalIndent
(int newGlobalIndent) The new global indentation size applied on all levels, defaulting to0
.final boolean
header()
Whether to emit a header row with column names, defaulting totrue
.final @NotNull JSONFormat
header
(boolean newHeader) Whether to emit a header row with column names, defaulting totrue
.final int
indent()
The indentation size per level.final @NotNull JSONFormat
indent
(int newIndent) The new indentation size per level value, defaulting to2
.final @NotNull String
indentString
(int level) Convenience method to get an indentation string at a given level.final boolean
mutable()
Whether this configuration object is mutable.final @NotNull JSONFormat
mutable
(boolean newMutable) The new value for the mutable flag, defaulting tofalse
.final @NotNull String
newline()
The formatting flag.final @NotNull JSONFormat
The new newline character, defaulting to\n
.final boolean
final @NotNull JSONFormat
quoteNested
(boolean newQuoteNested) final @NotNull JSONFormat.RecordFormat
The record format to be applied, defaulting toJSONFormat.RecordFormat.ARRAY
.final @NotNull JSONFormat
recordFormat
(JSONFormat.RecordFormat newRecordFormat) The record format to be applied, defaulting toJSONFormat.RecordFormat.ARRAY
.final boolean
Whether to wrap single column records in therecordFormat()
.final @NotNull JSONFormat
wrapSingleColumnRecords
(boolean newWrapSingleColumnRecords) Whether to wrap single column records in therecordFormat()
.
-
Field Details
-
DEFAULT_FOR_RESULTS
-
DEFAULT_FOR_RECORDS
-
-
Constructor Details
-
JSONFormat
public JSONFormat()
-
-
Method Details
-
mutable
public final boolean mutable()Whether this configuration object is mutable. -
mutable
The new value for the mutable flag, defaulting tofalse
. -
format
The new value for the formatting flag, defaulting tofalse
. -
format
public final boolean format()The formatting flag. -
newline
The new newline character, defaulting to\n
. -
newline
The formatting flag. -
globalIndent
The new global indentation size applied on all levels, defaulting to0
. -
globalIndent
public final int globalIndent()The global indentation applied on all levels. -
indent
The new indentation size per level value, defaulting to2
. -
indent
public final int indent()The indentation size per level. -
indentString
Convenience method to get an indentation string at a given level. -
header
Whether to emit a header row with column names, defaulting totrue
. -
header
public final boolean header()Whether to emit a header row with column names, defaulting totrue
. -
recordFormat
The record format to be applied, defaulting toJSONFormat.RecordFormat.ARRAY
. -
recordFormat
The record format to be applied, defaulting toJSONFormat.RecordFormat.ARRAY
. -
wrapSingleColumnRecords
@NotNull public final @NotNull JSONFormat wrapSingleColumnRecords(boolean newWrapSingleColumnRecords) Whether to wrap single column records in therecordFormat()
. -
wrapSingleColumnRecords
public final boolean wrapSingleColumnRecords()Whether to wrap single column records in therecordFormat()
. -
quoteNested
-
quoteNested
public final boolean quoteNested()
-