public abstract class JsonUtils
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
JsonUtils.FieldType |
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CLOSE |
static java.lang.String |
EMPTY_JSON |
static java.lang.String |
OPENQ |
Modifier and Type | Method and Description |
---|---|
static <T> void |
_addList(java.lang.StringBuilder sb,
java.lang.String fname,
java.util.List<T> list,
io.nats.client.support.JsonUtils.ListAdder<T> adder)
Appends a json field to a string builder.
|
static void |
addDurations(java.lang.StringBuilder sb,
java.lang.String fname,
java.util.List<java.time.Duration> durations)
Appends a json field to a string builder.
|
static void |
addField(java.lang.StringBuilder sb,
java.lang.String fname,
java.lang.Boolean value)
Appends a json field to a string builder.
|
static void |
addField(java.lang.StringBuilder sb,
java.lang.String fname,
java.lang.Integer value)
Appends a json field to a string builder.
|
static void |
addField(java.lang.StringBuilder sb,
java.lang.String fname,
JsonSerializable value)
Appends a json object to a string builder.
|
static void |
addField(java.lang.StringBuilder sb,
java.lang.String fname,
java.lang.Long value)
Appends a json field to a string builder.
|
static void |
addField(java.lang.StringBuilder sb,
java.lang.String fname,
java.lang.String value)
Appends a json field to a string builder.
|
static void |
addField(java.lang.StringBuilder sb,
java.lang.String fname,
java.time.ZonedDateTime zonedDateTime)
Appends a date/time to a string builder as a rfc 3339 formatted field.
|
static void |
addFieldAsNanos(java.lang.StringBuilder sb,
java.lang.String fname,
java.time.Duration value)
Appends a json field to a string builder.
|
static void |
addFieldEvenEmpty(java.lang.StringBuilder sb,
java.lang.String fname,
java.lang.String value)
Appends a json field to a string builder.
|
static void |
addFieldWhenGtZero(java.lang.StringBuilder sb,
java.lang.String fname,
java.lang.Integer value)
Appends a json field to a string builder.
|
static void |
addFieldWhenGtZero(java.lang.StringBuilder sb,
java.lang.String fname,
java.lang.Long value)
Appends a json field to a string builder.
|
static void |
addFldWhenTrue(java.lang.StringBuilder sb,
java.lang.String fname,
java.lang.Boolean value)
Appends a json field to a string builder.
|
static void |
addJsons(java.lang.StringBuilder sb,
java.lang.String fname,
java.util.List<? extends JsonSerializable> jsons)
Appends a json field to a string builder.
|
static void |
addStrings(java.lang.StringBuilder sb,
java.lang.String fname,
java.util.List<java.lang.String> strings)
Appends a json field to a string builder.
|
static void |
addStrings(java.lang.StringBuilder sb,
java.lang.String fname,
java.lang.String[] strArray)
Appends a json field to a string builder.
|
static java.lang.StringBuilder |
beginFormattedJson() |
static java.lang.StringBuilder |
beginJson() |
static java.lang.StringBuilder |
beginJsonPrefixed(java.lang.String prefix) |
static java.util.regex.Pattern |
boolean_pattern(java.lang.String field) |
static java.util.regex.Pattern |
buildPattern(java.lang.String fieldName,
JsonUtils.FieldType type)
Builds a json parsing pattern
|
static java.util.regex.Pattern |
buildPattern(java.lang.String fieldName,
java.lang.String typeRE) |
static java.lang.String |
endFormattedJson(java.lang.StringBuilder sb) |
static java.lang.StringBuilder |
endJson(java.lang.StringBuilder sb) |
static java.util.List<java.time.Duration> |
getDurationList(java.lang.String objectName,
java.lang.String json)
Extract a list durations for list object name.
|
static java.lang.String |
getFormatted(java.lang.Object o) |
static java.lang.String |
getJsonObject(java.lang.String objectName,
java.lang.String json)
Extract a JSON object string by object name.
|
static java.lang.String |
getJsonObject(java.lang.String objectName,
java.lang.String json,
java.lang.String dflt) |
static java.util.List<java.lang.Long> |
getLongList(java.lang.String objectName,
java.lang.String json)
Extract a list longs for list object name.
|
static java.util.Map<java.lang.String,java.lang.Long> |
getMapOfLongs(java.lang.String json)
Get a map of longs
|
static java.util.Map<java.lang.String,java.lang.String> |
getMapOfObjects(java.lang.String json)
Get a map of objects
|
static java.util.List<java.lang.String> |
getObjectList(java.lang.String objectName,
java.lang.String json)
Extract a list JSON object strings for list object name.
|
static java.util.List<java.lang.String> |
getStringList(java.lang.String objectName,
java.lang.String json)
Extract a list strings for list object name.
|
static java.util.regex.Pattern |
integer_pattern(java.lang.String field) |
static java.lang.String |
normalize(java.lang.String s) |
static java.util.regex.Pattern |
number_array_pattern(java.lang.String field) |
static java.util.regex.Pattern |
number_pattern(java.lang.String field)
Deprecated.
|
static java.lang.String |
objectString(java.lang.String name,
java.lang.Object o) |
static void |
printFormatted(java.lang.Object o) |
static byte[] |
readBase64(java.lang.String json,
java.util.regex.Pattern pattern) |
static boolean |
readBoolean(java.lang.String json,
java.util.regex.Pattern pattern) |
static java.lang.Boolean |
readBoolean(java.lang.String json,
java.util.regex.Pattern pattern,
java.lang.Boolean dflt) |
static byte[] |
readBytes(java.lang.String json,
java.util.regex.Pattern pattern) |
static java.time.ZonedDateTime |
readDate(java.lang.String json,
java.util.regex.Pattern pattern) |
static int |
readInt(java.lang.String json,
java.util.regex.Pattern pattern,
int dflt) |
static void |
readInt(java.lang.String json,
java.util.regex.Pattern pattern,
java.util.function.IntConsumer c) |
static java.lang.Integer |
readInteger(java.lang.String json,
java.util.regex.Pattern pattern) |
static java.lang.Long |
readLong(java.lang.String json,
java.util.regex.Pattern pattern) |
static long |
readLong(java.lang.String json,
java.util.regex.Pattern pattern,
long dflt) |
static void |
readLong(java.lang.String json,
java.util.regex.Pattern pattern,
java.util.function.LongConsumer c) |
static java.time.Duration |
readNanos(java.lang.String json,
java.util.regex.Pattern pattern) |
static void |
readNanos(java.lang.String json,
java.util.regex.Pattern pattern,
java.util.function.Consumer<java.time.Duration> c) |
static java.time.Duration |
readNanos(java.lang.String json,
java.util.regex.Pattern pattern,
java.time.Duration dflt) |
static java.lang.String |
readString(java.lang.String json,
java.util.regex.Pattern pattern) |
static java.lang.String |
readString(java.lang.String json,
java.util.regex.Pattern pattern,
java.lang.String dflt) |
static java.lang.Long |
safeParseLong(java.lang.String s) |
static long |
safeParseLong(java.lang.String s,
long dflt) |
static byte[] |
simpleMessageBody(java.lang.String name,
java.lang.Number value) |
static byte[] |
simpleMessageBody(java.lang.String name,
java.lang.String value) |
static java.util.regex.Pattern |
string_array_pattern(java.lang.String field) |
static java.util.regex.Pattern |
string_pattern(java.lang.String field) |
public static final java.lang.String EMPTY_JSON
public static final java.lang.String OPENQ
public static final java.lang.String CLOSE
public static java.util.regex.Pattern string_pattern(java.lang.String field)
@Deprecated public static java.util.regex.Pattern number_pattern(java.lang.String field)
public static java.util.regex.Pattern integer_pattern(java.lang.String field)
public static java.util.regex.Pattern boolean_pattern(java.lang.String field)
public static java.util.regex.Pattern string_array_pattern(java.lang.String field)
public static java.util.regex.Pattern number_array_pattern(java.lang.String field)
public static java.util.regex.Pattern buildPattern(java.lang.String fieldName, JsonUtils.FieldType type)
fieldName
- name of the fieldtype
- type of the field.public static java.util.regex.Pattern buildPattern(java.lang.String fieldName, java.lang.String typeRE)
public static java.lang.String getJsonObject(java.lang.String objectName, java.lang.String json)
objectName
- object namejson
- source jsonpublic static java.lang.String getJsonObject(java.lang.String objectName, java.lang.String json, java.lang.String dflt)
public static java.util.List<java.lang.String> getObjectList(java.lang.String objectName, java.lang.String json)
objectName
- list object namejson
- source jsonpublic static java.util.Map<java.lang.String,java.lang.String> getMapOfObjects(java.lang.String json)
json
- the jsonpublic static java.util.Map<java.lang.String,java.lang.Long> getMapOfLongs(java.lang.String json)
json
- the jsonpublic static java.util.List<java.lang.String> getStringList(java.lang.String objectName, java.lang.String json)
objectName
- object namejson
- source jsonpublic static java.util.List<java.lang.Long> getLongList(java.lang.String objectName, java.lang.String json)
objectName
- object namejson
- source jsonpublic static java.util.List<java.time.Duration> getDurationList(java.lang.String objectName, java.lang.String json)
objectName
- object namejson
- source jsonpublic static byte[] simpleMessageBody(java.lang.String name, java.lang.Number value)
public static byte[] simpleMessageBody(java.lang.String name, java.lang.String value)
public static java.lang.StringBuilder beginJson()
public static java.lang.StringBuilder beginJsonPrefixed(java.lang.String prefix)
public static java.lang.StringBuilder endJson(java.lang.StringBuilder sb)
public static java.lang.StringBuilder beginFormattedJson()
public static java.lang.String endFormattedJson(java.lang.StringBuilder sb)
public static void addField(java.lang.StringBuilder sb, java.lang.String fname, java.lang.String value)
sb
- string builderfname
- fieldnamevalue
- field valuepublic static void addFieldEvenEmpty(java.lang.StringBuilder sb, java.lang.String fname, java.lang.String value)
sb
- string builderfname
- fieldnamevalue
- field valuepublic static void addField(java.lang.StringBuilder sb, java.lang.String fname, java.lang.Boolean value)
sb
- string builderfname
- fieldnamevalue
- field valuepublic static void addFldWhenTrue(java.lang.StringBuilder sb, java.lang.String fname, java.lang.Boolean value)
sb
- string builderfname
- fieldnamevalue
- field valuepublic static void addField(java.lang.StringBuilder sb, java.lang.String fname, java.lang.Integer value)
sb
- string builderfname
- fieldnamevalue
- field valuepublic static void addFieldWhenGtZero(java.lang.StringBuilder sb, java.lang.String fname, java.lang.Integer value)
sb
- string builderfname
- fieldnamevalue
- field valuepublic static void addField(java.lang.StringBuilder sb, java.lang.String fname, java.lang.Long value)
sb
- string builderfname
- fieldnamevalue
- field valuepublic static void addFieldWhenGtZero(java.lang.StringBuilder sb, java.lang.String fname, java.lang.Long value)
sb
- string builderfname
- fieldnamevalue
- field valuepublic static void addFieldAsNanos(java.lang.StringBuilder sb, java.lang.String fname, java.time.Duration value)
sb
- string builderfname
- fieldnamevalue
- duration valuepublic static void addField(java.lang.StringBuilder sb, java.lang.String fname, JsonSerializable value)
sb
- string builderfname
- fieldnamevalue
- JsonSerializable valuepublic static <T> void _addList(java.lang.StringBuilder sb, java.lang.String fname, java.util.List<T> list, io.nats.client.support.JsonUtils.ListAdder<T> adder)
T
- the list typesb
- string builderfname
- fieldnamelist
- value listadder
- implementation to add value, including it's quotes if requiredpublic static void addStrings(java.lang.StringBuilder sb, java.lang.String fname, java.lang.String[] strArray)
sb
- string builderfname
- fieldnamestrArray
- field valuepublic static void addStrings(java.lang.StringBuilder sb, java.lang.String fname, java.util.List<java.lang.String> strings)
sb
- string builderfname
- fieldnamestrings
- field valuepublic static void addJsons(java.lang.StringBuilder sb, java.lang.String fname, java.util.List<? extends JsonSerializable> jsons)
sb
- string builderfname
- fieldnamejsons
- field valuepublic static void addDurations(java.lang.StringBuilder sb, java.lang.String fname, java.util.List<java.time.Duration> durations)
sb
- string builderfname
- fieldnamedurations
- list of durationspublic static void addField(java.lang.StringBuilder sb, java.lang.String fname, java.time.ZonedDateTime zonedDateTime)
sb
- string builderfname
- fieldnamezonedDateTime
- field valuepublic static java.lang.String readString(java.lang.String json, java.util.regex.Pattern pattern)
public static java.lang.String readString(java.lang.String json, java.util.regex.Pattern pattern, java.lang.String dflt)
public static byte[] readBytes(java.lang.String json, java.util.regex.Pattern pattern)
public static byte[] readBase64(java.lang.String json, java.util.regex.Pattern pattern)
public static boolean readBoolean(java.lang.String json, java.util.regex.Pattern pattern)
public static java.lang.Boolean readBoolean(java.lang.String json, java.util.regex.Pattern pattern, java.lang.Boolean dflt)
public static java.lang.Integer readInteger(java.lang.String json, java.util.regex.Pattern pattern)
public static int readInt(java.lang.String json, java.util.regex.Pattern pattern, int dflt)
public static void readInt(java.lang.String json, java.util.regex.Pattern pattern, java.util.function.IntConsumer c)
public static java.lang.Long readLong(java.lang.String json, java.util.regex.Pattern pattern)
public static long readLong(java.lang.String json, java.util.regex.Pattern pattern, long dflt)
public static void readLong(java.lang.String json, java.util.regex.Pattern pattern, java.util.function.LongConsumer c)
public static java.lang.Long safeParseLong(java.lang.String s)
public static long safeParseLong(java.lang.String s, long dflt)
public static java.time.ZonedDateTime readDate(java.lang.String json, java.util.regex.Pattern pattern)
public static java.time.Duration readNanos(java.lang.String json, java.util.regex.Pattern pattern)
public static java.time.Duration readNanos(java.lang.String json, java.util.regex.Pattern pattern, java.time.Duration dflt)
public static void readNanos(java.lang.String json, java.util.regex.Pattern pattern, java.util.function.Consumer<java.time.Duration> c)
public static java.lang.String normalize(java.lang.String s)
public static java.lang.String objectString(java.lang.String name, java.lang.Object o)
public static java.lang.String getFormatted(java.lang.Object o)
public static void printFormatted(java.lang.Object o)