Class GsonObjectCodec<T>

    • Field Summary

      Fields 
      Modifier and Type Field Description
      static ch.raffael.meldioc.library.codec.ContentType CONTENT_TYPE  
      static java.nio.charset.Charset DEFAULT_CHARSET  
      static int MIN_BUFFER_SIZE  
      static 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
      T decode​(byte[] data)  
      T decode​(java.io.InputStream stream)  
      io.vavr.Tuple2<byte[],​ch.raffael.meldioc.library.codec.ContentType> encode​(T value)  
      ch.raffael.meldioc.library.codec.ContentType encode​(T value, java.io.OutputStream target)  
      static com.google.gson.GsonBuilder loadServiceLoaderTypeAdapters​(com.google.gson.GsonBuilder builder)  
      static com.google.gson.GsonBuilder loadServiceLoaderTypeAdapters​(java.lang.Class<?> refClass, com.google.gson.GsonBuilder builder)  
      static com.google.gson.GsonBuilder loadServiceLoaderTypeAdapters​(java.lang.ClassLoader classLoader, com.google.gson.GsonBuilder builder)  
      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.
      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.
      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.
      static com.google.gson.GsonBuilder standardGsonBuilder()
      Deprecated, for removal: This API element is subject to removal in a future version.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • 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:
        decode in interface ObjectDecoder<T>
        Throws:
        java.io.IOException
      • encode

        public ch.raffael.meldioc.library.codec.ContentType encode​(T value,
                                                                   java.io.OutputStream target)
                                                            throws java.io.IOException
        Specified by:
        encode in interface ObjectEncoder<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:
        encode in interface ObjectEncoder<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.