Package ch.raffael.meldioc.library.codec
Class GsonObjectCodec<T>
- java.lang.Object
-
- ch.raffael.meldioc.library.codec.GsonObjectCodec<T>
-
- All Implemented Interfaces:
ObjectCodec<T>,ObjectDecoder<T>,ObjectEncoder<T>
public class GsonObjectCodec<T> extends java.lang.Object implements ObjectCodec<T>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classGsonObjectCodec.Factory
-
Field Summary
Fields Modifier and Type Field Description static ch.raffael.meldioc.library.codec.ContentTypeCONTENT_TYPEstatic java.nio.charset.CharsetDEFAULT_CHARSETstatic intMIN_BUFFER_SIZEstatic io.vavr.control.Option<ch.raffael.meldioc.library.codec.ContentType>SOME_CONTENT_TYPE
-
Constructor Summary
Constructors Constructor Description GsonObjectCodec(com.google.gson.Gson gson, java.lang.Class<T> type)GsonObjectCodec(com.google.gson.Gson gson, java.lang.Class<T> type, int bufferSize)GsonObjectCodec(com.google.gson.Gson gson, java.lang.Class<T> type, int bufferSize, io.vavr.control.Option<java.nio.charset.Charset> charset)GsonObjectCodec(com.google.gson.Gson gson, java.lang.Class<T> type, int bufferSize, java.nio.charset.Charset charset)GsonObjectCodec(com.google.gson.Gson gson, java.lang.Class<T> type, java.nio.charset.Charset charset)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description Tdecode(byte[] data)Tdecode(java.io.InputStream stream)io.vavr.Tuple2<byte[],ch.raffael.meldioc.library.codec.ContentType>encode(T value)ch.raffael.meldioc.library.codec.ContentTypeencode(T value, java.io.OutputStream target)static com.google.gson.GsonBuilderloadServiceLoaderTypeAdapters(com.google.gson.GsonBuilder builder)static com.google.gson.GsonBuilderloadServiceLoaderTypeAdapters(java.lang.Class<?> refClass, com.google.gson.GsonBuilder builder)static com.google.gson.GsonBuilderloadServiceLoaderTypeAdapters(java.lang.ClassLoader classLoader, com.google.gson.GsonBuilder builder)static com.google.gson.GsonBuilderprobeJavaTime(com.google.gson.GsonBuilder builder)Deprecated, for removal: This API element is subject to removal in a future version.static com.google.gson.GsonBuilderprobeRegisterVavr(com.google.gson.GsonBuilder builder)Deprecated, for removal: This API element is subject to removal in a future version.static com.google.gson.GsonBuilderregisterVavr(com.google.gson.GsonBuilder builder)Deprecated, for removal: This API element is subject to removal in a future version.static com.google.gson.GsonBuilderstandardGsonBuilder()Deprecated, for removal: This API element is subject to removal in a future version.
-
-
-
Field Detail
-
MIN_BUFFER_SIZE
public static final int MIN_BUFFER_SIZE
- See Also:
- Constant Field Values
-
DEFAULT_CHARSET
public static final java.nio.charset.Charset DEFAULT_CHARSET
-
CONTENT_TYPE
public static final ch.raffael.meldioc.library.codec.ContentType CONTENT_TYPE
-
SOME_CONTENT_TYPE
public static final io.vavr.control.Option<ch.raffael.meldioc.library.codec.ContentType> SOME_CONTENT_TYPE
-
-
Constructor Detail
-
GsonObjectCodec
public GsonObjectCodec(com.google.gson.Gson gson, java.lang.Class<T> type)
-
GsonObjectCodec
public GsonObjectCodec(com.google.gson.Gson gson, java.lang.Class<T> type, int bufferSize)
-
GsonObjectCodec
public GsonObjectCodec(com.google.gson.Gson gson, java.lang.Class<T> type, java.nio.charset.Charset charset)
-
GsonObjectCodec
public GsonObjectCodec(com.google.gson.Gson gson, java.lang.Class<T> type, int bufferSize, java.nio.charset.Charset charset)
-
GsonObjectCodec
public GsonObjectCodec(com.google.gson.Gson gson, java.lang.Class<T> type, int bufferSize, io.vavr.control.Option<java.nio.charset.Charset> charset)
-
-
Method Detail
-
decode
public T decode(java.io.InputStream stream) throws java.io.IOException
- Specified by:
decodein interfaceObjectDecoder<T>- Throws:
java.io.IOException
-
decode
public T decode(byte[] data)
- Specified by:
decodein interfaceObjectDecoder<T>
-
encode
public ch.raffael.meldioc.library.codec.ContentType encode(T value, java.io.OutputStream target) throws java.io.IOException
- Specified by:
encodein interfaceObjectEncoder<T>- Throws:
java.io.IOException
-
encode
public io.vavr.Tuple2<byte[],ch.raffael.meldioc.library.codec.ContentType> encode(T value) throws java.io.IOException
- Specified by:
encodein interfaceObjectEncoder<T>- Throws:
java.io.IOException
-
standardGsonBuilder
@Deprecated(forRemoval=true) public static com.google.gson.GsonBuilder standardGsonBuilder()
Deprecated, for removal: This API element is subject to removal in a future version.
-
loadServiceLoaderTypeAdapters
public static com.google.gson.GsonBuilder loadServiceLoaderTypeAdapters(com.google.gson.GsonBuilder builder)
-
loadServiceLoaderTypeAdapters
public static com.google.gson.GsonBuilder loadServiceLoaderTypeAdapters(java.lang.Class<?> refClass, com.google.gson.GsonBuilder builder)
-
loadServiceLoaderTypeAdapters
public static com.google.gson.GsonBuilder loadServiceLoaderTypeAdapters(java.lang.ClassLoader classLoader, com.google.gson.GsonBuilder builder)
-
probeRegisterVavr
@Deprecated(forRemoval=true) public static com.google.gson.GsonBuilder probeRegisterVavr(com.google.gson.GsonBuilder builder)
Deprecated, for removal: This API element is subject to removal in a future version.
-
probeJavaTime
@Deprecated(forRemoval=true) public static com.google.gson.GsonBuilder probeJavaTime(com.google.gson.GsonBuilder builder)
Deprecated, for removal: This API element is subject to removal in a future version.
-
registerVavr
@Deprecated(forRemoval=true) public static com.google.gson.GsonBuilder registerVavr(com.google.gson.GsonBuilder builder)
Deprecated, for removal: This API element is subject to removal in a future version.
-
-