Class GsonJsonHandler
java.lang.Object
com.caplin.datasource.messaging.json.GsonJsonHandler
- All Implemented Interfaces:
JsonHandler<com.google.gson.JsonElement>
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptioncom.google.gson.JsonElement
diff
(com.google.gson.JsonElement source, com.google.gson.JsonElement target) Creates a JSON patch of the difference between two JSON tree representationsformat
(com.google.gson.JsonElement jsonElement) Formats a JSON tree representation of an object to a JSON String.com.google.gson.JsonElement
Parses a JSON text into a JSON tree representation used by the underlying JSON library.com.google.gson.JsonElement
patch
(com.google.gson.JsonElement source, com.google.gson.JsonElement diff) Updates a JSON tree representation with a JSON patchcom.google.gson.JsonElement
toJsonTree
(Object userObject) Serializes a plain Java object (POJO) to a JSON tree representation used by the underlying JSON library.Deserializes a JSON tree representation to a plain Java object
-
Constructor Details
-
GsonJsonHandler
public GsonJsonHandler() -
GsonJsonHandler
-
-
Method Details
-
toJsonTree
Description copied from interface:JsonHandler
Serializes a plain Java object (POJO) to a JSON tree representation used by the underlying JSON library.- Specified by:
toJsonTree
in interfaceJsonHandler<com.google.gson.JsonElement>
- Parameters:
userObject
- a plain Java object- Returns:
- a JSON tree representation of the object
-
toObject
Description copied from interface:JsonHandler
Deserializes a JSON tree representation to a plain Java object- Specified by:
toObject
in interfaceJsonHandler<com.google.gson.JsonElement>
- Parameters:
jsonElement
- a JSON tree representation of the objectuserType
- the type of the object to deserialize into- Returns:
- a new object of type userType
- Throws:
Exception
- if deserialization fails
-
parse
Description copied from interface:JsonHandler
Parses a JSON text into a JSON tree representation used by the underlying JSON library.- Specified by:
parse
in interfaceJsonHandler<com.google.gson.JsonElement>
- Parameters:
jsonText
- the JSON text to parse- Returns:
- a JSON tree representation of the JSON text
- Throws:
Exception
- if the parsing fails
-
format
Description copied from interface:JsonHandler
Formats a JSON tree representation of an object to a JSON String.- Specified by:
format
in interfaceJsonHandler<com.google.gson.JsonElement>
- Parameters:
jsonElement
- a JSON tree representation of an object- Returns:
- the JSON String
- Throws:
Exception
- if formatting fails
-
diff
public com.google.gson.JsonElement diff(com.google.gson.JsonElement source, com.google.gson.JsonElement target) Description copied from interface:JsonHandler
Creates a JSON patch of the difference between two JSON tree representations- Specified by:
diff
in interfaceJsonHandler<com.google.gson.JsonElement>
- Parameters:
source
- a JSON tree representation of the source objecttarget
- a JSON tree representation of the target object- Returns:
- a JSON tree representation of the JSON patch needed to patch source to create target.
-
patch
public com.google.gson.JsonElement patch(com.google.gson.JsonElement source, com.google.gson.JsonElement diff) throws Exception Description copied from interface:JsonHandler
Updates a JSON tree representation with a JSON patch- Specified by:
patch
in interfaceJsonHandler<com.google.gson.JsonElement>
- Parameters:
source
- a JSON tree representation of the source objectdiff
- a JSON tree representation of the JSON patch- Returns:
- the updated, patched object
- Throws:
Exception
- if the patch fails
-