Class JsonUnflattener
java.lang.Object
com.github.wnameless.json.unflattener.JsonUnflattener
JsonUnflattener provides a static unflatten(String) method to unflatten any
flattened JSON string back to nested one.- Author:
- Wei-Ming Wu
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringROOTis the default key of the Map returned byunflattenAsMap(java.lang.String). -
Constructor Summary
ConstructorsConstructorDescriptionJsonUnflattener(com.github.wnameless.json.base.JsonCore<?> jsonCore, Reader jsonReader) Creates a JSON unflattener by givenJsonCoreand JSON string reader.JsonUnflattener(com.github.wnameless.json.base.JsonCore<?> jsonCore, String json) Creates a JSON unflattener by givenJsonCoreand JSON string.JsonUnflattener(com.github.wnameless.json.base.JsonCore<?> jsonCore, Map<String, ?> flattenedMap) Creates a JSON unflattener by givenJsonCoreand flattenedMap.JsonUnflattener(Reader jsonReader) Creates a JSON unflattener by given JSON string reader.JsonUnflattener(String json) Creates a JSON unflattener by given JSON string.JsonUnflattener(Map<String, ?> flattenedMap) Creates a JSON unflattener by given flattenedMap. -
Method Summary
Modifier and TypeMethodDescriptionbooleaninthashCode()toString()Returns a JSON string of nested objects by the given flattened JSON string.static StringReturns a JSON string of nested objects by the given flattened JSON string.static StringReturns a JSON string of nested objects by the given flattened Map.Returns a Java Map of nested objects by the given flattened JSON string.unflattenAsMap(String json) Returns a Java Map of nested objects by the given flattened JSON string.unflattenAsMap(Map<String, ?> flattenedMap) Returns a Java Map of nested objects by the given flattened Map.withFlattenMode(FlattenMode flattenMode) A fluent setter to setup a mode of theJsonUnflattener.withKeyTransformer(KeyTransformer keyTrans) A fluent setter to setup aKeyTransformerof theJsonUnflattener.withLeftAndRightBrackets(char leftBracket, char rightBracket) A fluent setter to setup the left and right brackets within a key in the flattened JSON.withPrintMode(PrintMode printMode) A fluent setter to setup a print mode of theJsonUnflattener.withSeparator(char separator) A fluent setter to setup the separator within a key in the flattened JSON.
-
Field Details
-
ROOT
ROOTis the default key of the Map returned byunflattenAsMap(java.lang.String). WhenJsonUnflattenerprocesses a JSON string which is not a JSON object or array, the final outcome may not suit in a Java Map. At that moment,JsonUnflattenerwill put the result in the Map withROOTas its key.- See Also:
-
-
Constructor Details
-
JsonUnflattener
Creates a JSON unflattener by given JSON string.- Parameters:
json- a JSON string
-
JsonUnflattener
Creates a JSON unflattener by givenJsonCoreand JSON string.- Parameters:
jsonCore- aJsonCorejson- a JSON string
-
JsonUnflattener
Creates a JSON unflattener by given JSON string reader.- Parameters:
jsonReader- a JSON reader- Throws:
IOException- if the jsonReader cannot be read
-
JsonUnflattener
public JsonUnflattener(com.github.wnameless.json.base.JsonCore<?> jsonCore, Reader jsonReader) throws IOException Creates a JSON unflattener by givenJsonCoreand JSON string reader.- Parameters:
jsonCore- aJsonCorejsonReader- a JSON reader- Throws:
IOException- if the jsonReader cannot be read
-
JsonUnflattener
Creates a JSON unflattener by given flattenedMap.- Parameters:
flattenedMap- a flattenedMap
-
JsonUnflattener
public JsonUnflattener(com.github.wnameless.json.base.JsonCore<?> jsonCore, Map<String, ?> flattenedMap) Creates a JSON unflattener by givenJsonCoreand flattenedMap.- Parameters:
jsonCore- aJsonCoreflattenedMap- a flattenedMap
-
-
Method Details
-
unflatten
Returns a JSON string of nested objects by the given flattened JSON string.- Parameters:
json- a flattened JSON string- Returns:
- a JSON string of nested objects
-
unflatten
Returns a JSON string of nested objects by the given flattened Map.- Parameters:
flattenedMap- a flattened Map- Returns:
- a JSON string of nested objects
-
unflattenAsMap
Returns a Java Map of nested objects by the given flattened JSON string.- Parameters:
json- a flattened JSON string- Returns:
- a Java Map of nested objects
-
unflattenAsMap
Returns a Java Map of nested objects by the given flattened Map.- Parameters:
flattenedMap- a flattened Map- Returns:
- a Java Map of nested objects
-
withFlattenMode
A fluent setter to setup a mode of theJsonUnflattener.- Parameters:
flattenMode- aFlattenMode- Returns:
- this
JsonUnflattener
-
withSeparator
A fluent setter to setup the separator within a key in the flattened JSON. The default separator is a dot(.).- Parameters:
separator- any character- Returns:
- this
JsonUnflattener
-
withLeftAndRightBrackets
A fluent setter to setup the left and right brackets within a key in the flattened JSON. The default left and right brackets are left square bracket([) and right square bracket(]).- Parameters:
leftBracket- any characterrightBracket- any character- Returns:
- this
JsonUnflattener
-
withPrintMode
A fluent setter to setup a print mode of theJsonUnflattener. The default print mode is minimal.- Parameters:
printMode- aPrintMode- Returns:
- this
JsonUnflattener
-
withKeyTransformer
A fluent setter to setup aKeyTransformerof theJsonUnflattener.- Parameters:
keyTrans- aKeyTransformer- Returns:
- this
JsonUnflattener
-
unflatten
Returns a JSON string of nested objects by the given flattened JSON string.- Returns:
- a JSON string of nested objects
-
unflattenAsMap
Returns a Java Map of nested objects by the given flattened JSON string.- Returns:
- a Java Map of nested objects
-
hashCode
public int hashCode() -
equals
-
toString
-