Package tilda.utils.json
Class JSONUtil
- java.lang.Object
-
- tilda.utils.json.JSONUtil
-
public class JSONUtil extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description protected static org.apache.logging.log4j.Logger
LOG
-
Constructor Summary
Constructors Constructor Description JSONUtil()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static void
end(java.io.Writer Out, char closeObjectOrArray)
static java.util.Map<java.lang.String,java.lang.Object>
fromJSON(java.lang.String JsonStr)
static com.google.gson.JsonObject
fromJSONObj(java.io.BufferedReader R)
static com.google.gson.JsonObject
fromJSONObj(java.lang.String JsonStr)
static com.google.gson.JsonElement
getJsonElementFromPath(com.google.gson.JsonElement e, java.lang.String path)
Follows the JsonPath syntax more or less...static void
newline(java.io.Writer Out)
static java.lang.String
prettyPrint(com.google.gson.JsonObject e)
static void
print(java.io.Writer out, int padding, java.lang.String name, boolean first, com.google.gson.JsonArray val, java.lang.Class type, boolean flatPrint)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, boolean v)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, boolean[] a)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, char v)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, char[] a)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, double v)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, double[] a)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, float v)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, float[] a)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, int v)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, int[] a)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, long v)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, long[] a)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, short v)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, short[] a)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.Boolean[] a)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.Character[] a)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.Double[] a)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.Float[] a)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.Integer[] a)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.Long[] a)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.Short[] a)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.String v)
static void
print(java.io.Writer out, java.lang.String name, boolean first, java.lang.String[] a)
static void
print(java.io.Writer Out, java.lang.String elementName, boolean firstElement, java.lang.String[][] Values, java.lang.String Header)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.String[] a, int padding, boolean flatPrint)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.math.BigDecimal v)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.math.BigDecimal[] a)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.time.LocalDate v)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.time.LocalDate[] a)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.time.ZonedDateTime v)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.time.ZonedDateTime[] a)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.util.Collection<java.lang.String> a)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.util.Map<java.lang.String,java.lang.String> M)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.util.UUID v)
static void
print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.util.UUID[] a)
static void
print(java.io.Writer Out, java.lang.String elementName, java.lang.String JsonExportName, boolean firstElement, java.util.List<? extends JSONable> L, java.lang.String Header)
static void
print(java.io.Writer Out, java.lang.String elementName, java.lang.String JsonExportName, boolean firstElement, java.util.List<? extends JSONable> L, java.lang.String Header, java.time.ZonedDateTime lastSync)
static void
print(java.io.Writer Out, java.lang.String elementName, java.lang.String JsonExportName, boolean firstElement, JSONable Obj, java.lang.String Header)
static void
print(java.io.Writer out, java.lang.String elementName, java.sql.ResultSet RS, int idx, ColumnMeta cm)
static void
print(java.io.Writer out, java.lang.String elementName, java.sql.ResultSet RS, int idx, ColumnMeta cm, boolean trimStrings)
static void
print(java.io.Writer Out, java.lang.String JsonExportName, java.util.List<? extends JSONable> L, java.lang.String Header, java.time.ZonedDateTime lastSync)
static void
printArrayStart(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.String Header)
protected static void
printChar(java.io.Writer Out, char v)
protected static void
printDouble(java.io.Writer Out, double v)
static void
printElementStart(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.String Header)
protected static void
printFloat(java.io.Writer Out, float v)
protected static void
printLocalDate(java.io.Writer Out, java.time.LocalDate v)
static void
printRawArray(java.io.Writer out, java.lang.String name, boolean firstElement, java.util.List<java.lang.String> rawJsonObjects)
Prints a raw json object as a property.static void
printRawArray(java.io.Writer out, java.util.List<java.lang.String> rawJsonObjects)
Prints a raw json object.static void
printRawObject(java.io.Writer out, java.lang.String name, boolean firstElement, java.lang.String rawJsonObject)
Prints a raw json object.protected static void
printString(java.io.Writer Out, java.lang.String v)
static void
printSubJson(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.String v)
protected static void
printUUID(java.io.Writer Out, java.util.UUID v)
protected static void
printZonedDateTime(java.io.Writer Out, java.time.ZonedDateTime v)
static void
response(java.io.Writer Out, java.lang.String[][] groupValues)
static void
response(java.io.Writer Out, java.lang.String JsonExportName, java.util.List<? extends JSONable> L)
static void
response(java.io.Writer Out, java.lang.String JsonExportName, java.util.List<? extends JSONable> L, java.lang.String perfMessage)
static void
response(java.io.Writer Out, java.lang.String JsonExportName, JSONable Obj)
static void
response(java.io.Writer Out, java.lang.String JsonExportName, JSONable Obj, java.lang.String perfMessage)
static void
responseDojoMultipartConfig(java.io.Writer Out, java.lang.String JsonExportName, JSONable Obj)
static void
responseDojoMultipartConfig(java.io.Writer Out, java.lang.String JsonExportName, JSONable Obj, java.lang.String perfMessage)
When using client-side frameworks such as Dojo that may use an iFrame for ajax-contents, the protocol is typically to return the json data packaged inside a textarea.static void
startend(java.io.Writer Out, char startChar)
static void
startOK(java.io.Writer Out, char openObjectOrArray)
static void
startOK(java.io.Writer Out, char openObjectOrArray, java.lang.String perfMessage)
Starts the standard JSON header for payload, i.e., {code:xxx,data:}
-
-
-
Method Detail
-
printString
protected static void printString(java.io.Writer Out, java.lang.String v) throws java.io.IOException
- Throws:
java.io.IOException
-
printZonedDateTime
protected static void printZonedDateTime(java.io.Writer Out, java.time.ZonedDateTime v) throws java.io.IOException
- Throws:
java.io.IOException
-
printLocalDate
protected static void printLocalDate(java.io.Writer Out, java.time.LocalDate v) throws java.io.IOException
- Throws:
java.io.IOException
-
printUUID
protected static void printUUID(java.io.Writer Out, java.util.UUID v) throws java.io.IOException
- Throws:
java.io.IOException
-
printChar
protected static void printChar(java.io.Writer Out, char v) throws java.io.IOException
- Throws:
java.io.IOException
-
printFloat
protected static void printFloat(java.io.Writer Out, float v) throws java.io.IOException
- Throws:
java.io.IOException
-
printDouble
protected static void printDouble(java.io.Writer Out, double v) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement) throws java.io.IOException
- Throws:
java.io.IOException
-
printSubJson
public static void printSubJson(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.String v) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.String v) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, char v) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.time.ZonedDateTime v) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.time.LocalDate v) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.util.UUID v) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, boolean v) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, short v) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, int v) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, long v) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, float v) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, double v) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.math.BigDecimal v) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, boolean[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.Boolean[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, short[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.Short[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, int[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.Integer[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, long[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.Long[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, char[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.Character[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, float[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.Float[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, double[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.Double[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.math.BigDecimal[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer out, java.lang.String name, boolean first, java.lang.String[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.String[] a, int padding, boolean flatPrint) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.time.ZonedDateTime[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.time.LocalDate[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.util.UUID[] a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.util.Collection<java.lang.String> a) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.util.Map<java.lang.String,java.lang.String> M) throws java.io.IOException
- Throws:
java.io.IOException
-
print
public static void print(java.io.Writer out, int padding, java.lang.String name, boolean first, com.google.gson.JsonArray val, java.lang.Class type, boolean flatPrint) throws java.io.IOException
- Throws:
java.io.IOException
-
startOK
public static void startOK(java.io.Writer Out, char openObjectOrArray, java.lang.String perfMessage) throws java.io.IOException
Starts the standard JSON header for payload, i.e., {code:xxx,data:}- Parameters:
Out
-openObjectOrArray
- A character for '{' or '[' depending on whether an object is output, or an array of objects.- Throws:
java.io.IOException
-
startOK
public static void startOK(java.io.Writer Out, char openObjectOrArray) throws java.io.IOException
- Throws:
java.io.IOException
-
printArrayStart
public static void printArrayStart(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.String Header) throws java.io.IOException
- Throws:
java.io.IOException
-
printElementStart
public static void printElementStart(java.io.Writer Out, java.lang.String Name, boolean FirstElement, java.lang.String Header) throws java.io.IOException
- Throws:
java.io.IOException
-
startend
public static void startend(java.io.Writer Out, char startChar) throws java.io.IOException
- Throws:
java.io.IOException
-
newline
public static void newline(java.io.Writer Out) throws java.io.IOException
- Throws:
java.io.IOException
-
end
public static void end(java.io.Writer Out, char closeObjectOrArray) throws java.io.IOException
- Throws:
java.io.IOException
-
response
public static void response(java.io.Writer Out, java.lang.String JsonExportName, JSONable Obj, java.lang.String perfMessage) throws java.lang.Exception
- Throws:
java.lang.Exception
-
response
public static void response(java.io.Writer Out, java.lang.String JsonExportName, JSONable Obj) throws java.lang.Exception
- Throws:
java.lang.Exception
-
responseDojoMultipartConfig
public static void responseDojoMultipartConfig(java.io.Writer Out, java.lang.String JsonExportName, JSONable Obj, java.lang.String perfMessage) throws java.lang.Exception
When using client-side frameworks such as Dojo that may use an iFrame for ajax-contents, the protocol is typically to return the json data packaged inside a textarea. This function does that. It is exactly equivalent to the "plain" response method except the jsonable object is output inside a textarea and the writer is expected to be set up as an HTML one.- Parameters:
Out
-JsonExportName
-Obj
-- Throws:
java.lang.Exception
-
responseDojoMultipartConfig
public static void responseDojoMultipartConfig(java.io.Writer Out, java.lang.String JsonExportName, JSONable Obj) throws java.lang.Exception
- Throws:
java.lang.Exception
-
response
public static void response(java.io.Writer Out, java.lang.String JsonExportName, java.util.List<? extends JSONable> L, java.lang.String perfMessage) throws java.lang.Exception
- Throws:
java.lang.Exception
-
response
public static void response(java.io.Writer Out, java.lang.String JsonExportName, java.util.List<? extends JSONable> L) throws java.lang.Exception
- Throws:
java.lang.Exception
-
response
public static void response(java.io.Writer Out, java.lang.String[][] groupValues) throws java.io.IOException
- Throws:
java.io.IOException
-
fromJSON
public static java.util.Map<java.lang.String,java.lang.Object> fromJSON(java.lang.String JsonStr)
-
fromJSONObj
public static com.google.gson.JsonObject fromJSONObj(java.lang.String JsonStr)
-
fromJSONObj
public static com.google.gson.JsonObject fromJSONObj(java.io.BufferedReader R)
-
print
public static void print(java.io.Writer Out, java.lang.String elementName, java.lang.String JsonExportName, boolean firstElement, java.util.List<? extends JSONable> L, java.lang.String Header) throws java.lang.Exception
- Throws:
java.lang.Exception
-
print
public static void print(java.io.Writer Out, java.lang.String elementName, java.lang.String JsonExportName, boolean firstElement, java.util.List<? extends JSONable> L, java.lang.String Header, java.time.ZonedDateTime lastSync) throws java.lang.Exception
- Throws:
java.lang.Exception
-
print
public static void print(java.io.Writer Out, java.lang.String JsonExportName, java.util.List<? extends JSONable> L, java.lang.String Header, java.time.ZonedDateTime lastSync) throws java.lang.Exception
- Throws:
java.lang.Exception
-
print
public static void print(java.io.Writer Out, java.lang.String elementName, java.lang.String JsonExportName, boolean firstElement, JSONable Obj, java.lang.String Header) throws java.lang.Exception
- Throws:
java.lang.Exception
-
print
public static void print(java.io.Writer Out, java.lang.String elementName, boolean firstElement, java.lang.String[][] Values, java.lang.String Header) throws java.io.IOException
- Throws:
java.io.IOException
-
printRawObject
public static void printRawObject(java.io.Writer out, java.lang.String name, boolean firstElement, java.lang.String rawJsonObject) throws java.io.IOException
Prints a raw json object. It's assumed to be properly formed.- Parameters:
out
-name
-firstElement
-rawJsonObject
-- Throws:
java.io.IOException
-
printRawArray
public static void printRawArray(java.io.Writer out, java.lang.String name, boolean firstElement, java.util.List<java.lang.String> rawJsonObjects) throws java.io.IOException
Prints a raw json object as a property. It's assumed to be properly formed.- Parameters:
out
-name
-firstElement
-rawJsonObject
-- Throws:
java.io.IOException
-
printRawArray
public static void printRawArray(java.io.Writer out, java.util.List<java.lang.String> rawJsonObjects) throws java.io.IOException
Prints a raw json object. It's assumed to be properly formed.- Parameters:
out
-rawJsonObject
-- Throws:
java.io.IOException
-
getJsonElementFromPath
public static com.google.gson.JsonElement getJsonElementFromPath(com.google.gson.JsonElement e, java.lang.String path) throws java.lang.Exception
Follows the JsonPath syntax more or less... similar to how you'd access a value in JavaScript, i.e., obj.someItem.someOtherItem.someArray[0].someItem.
- If an element in the path chain doesn't exist in the JSON object or is null, null will be returned.
- Array must be subscripted with a positive integer. If not, will throw an exception.
- If an element is subscripted like an array, but is not an array in the source object, will throw an exception.
- Parameters:
json
-path
-- Returns:
- Throws:
java.lang.Exception
-
prettyPrint
public static java.lang.String prettyPrint(com.google.gson.JsonObject e)
-
print
public static void print(java.io.Writer out, java.lang.String elementName, java.sql.ResultSet RS, int idx, ColumnMeta cm) throws java.lang.Exception
- Throws:
java.lang.Exception
-
print
public static void print(java.io.Writer out, java.lang.String elementName, java.sql.ResultSet RS, int idx, ColumnMeta cm, boolean trimStrings) throws java.lang.Exception
- Throws:
java.lang.Exception
-
-