Package org.javers.core.json
Class JsonConverter
- java.lang.Object
-
- org.javers.core.json.JsonConverter
-
public class JsonConverter extends java.lang.Object
Javers is meant to support various persistence stores for any kind of client's data, hence we use JSON format to serialize/deserialize client's domain objects.
Javers uses Gson library which provides neat and pretty JSON representation for well known Java types.
But sometimes Gson's default JSON representation isn't appropriate for your domain model. This is often the case when dealing with Values like Date or Money.
If so, you can easily customize Javers serialization/deserialization behaviour by providing plugins for each of your custom type. Javers accepts several kind of plugins:-
BasicStringTypeAdapter
- extend it if you need to represent Value as single String and don't want to deal with JSON API. For concrete class example seeLocalDateTimeTypeAdapter
. -
JsonTypeAdapter
- use it if you need full control over JSON conversion - native Gson
TypeAdapter
- native Gson
JsonSerializer
- native Gson
JsonDeserializer
-
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> T
fromJson(com.google.gson.JsonElement json, java.lang.Class<T> expectedType)
<T> T
fromJson(java.io.Reader reader, java.lang.reflect.Type expectedType)
<T> T
fromJson(java.lang.String json, java.lang.Class<T> expectedType)
java.lang.Object
fromJson(java.lang.String json, java.lang.reflect.Type expectedType)
com.google.gson.JsonElement
fromJsonToJsonElement(java.lang.String json)
CdoSnapshot
fromSerializedSnapshot(CdoSnapshotSerialized cdoSnapshotSerialized)
java.lang.String
toJson(java.lang.Object value)
com.google.gson.JsonElement
toJsonElement(java.lang.Object value)
-
-
-
Method Detail
-
toJson
public java.lang.String toJson(java.lang.Object value)
-
toJsonElement
public com.google.gson.JsonElement toJsonElement(java.lang.Object value)
-
fromJson
public <T> T fromJson(java.lang.String json, java.lang.Class<T> expectedType)
-
fromJson
public java.lang.Object fromJson(java.lang.String json, java.lang.reflect.Type expectedType)
-
fromJsonToJsonElement
public com.google.gson.JsonElement fromJsonToJsonElement(java.lang.String json)
-
fromJson
public <T> T fromJson(com.google.gson.JsonElement json, java.lang.Class<T> expectedType)
-
fromJson
public <T> T fromJson(java.io.Reader reader, java.lang.reflect.Type expectedType)
-
fromSerializedSnapshot
public CdoSnapshot fromSerializedSnapshot(CdoSnapshotSerialized cdoSnapshotSerialized)
-
-