Class EitherTypeAdapter<L,​R>

    • Constructor Summary

      Constructors 
      Constructor Description
      EitherTypeAdapter​(com.google.gson.Gson gson, com.google.gson.reflect.TypeToken<? extends Either<L,​R>> typeToken)  
      EitherTypeAdapter​(com.google.gson.Gson gson, com.google.gson.reflect.TypeToken<? extends Either<L,​R>> typeToken, java.util.function.Predicate<com.google.gson.JsonElement> leftChecker, java.util.function.Predicate<com.google.gson.JsonElement> rightChecker)  
      EitherTypeAdapter​(com.google.gson.Gson gson, com.google.gson.reflect.TypeToken<? extends Either<L,​R>> typeToken, java.util.function.Predicate<com.google.gson.JsonElement> leftChecker, java.util.function.Predicate<com.google.gson.JsonElement> rightChecker, com.google.gson.TypeAdapter<L> leftAdapter, com.google.gson.TypeAdapter<R> rightAdapter)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected Either<L,​R> create​(com.google.gson.stream.JsonToken nextToken, com.google.gson.stream.JsonReader in)  
      protected Either<L,​R> createLeft​(L obj)  
      protected Either<L,​R> createRight​(R obj)  
      Either<L,​R> read​(com.google.gson.stream.JsonReader in)  
      void write​(com.google.gson.stream.JsonWriter out, Either<L,​R> value)  
      • Methods inherited from class com.google.gson.TypeAdapter

        fromJson, fromJson, fromJsonTree, nullSafe, toJson, toJson, toJsonTree
      • Methods inherited from class java.lang.Object

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

      • typeToken

        protected final com.google.gson.reflect.TypeToken<? extends Either<L,​R>> typeToken
      • leftChecker

        protected final java.util.function.Predicate<com.google.gson.JsonElement> leftChecker
      • rightChecker

        protected final java.util.function.Predicate<com.google.gson.JsonElement> rightChecker
    • Constructor Detail

      • EitherTypeAdapter

        public EitherTypeAdapter​(com.google.gson.Gson gson,
                                 com.google.gson.reflect.TypeToken<? extends Either<L,​R>> typeToken)
      • EitherTypeAdapter

        public EitherTypeAdapter​(com.google.gson.Gson gson,
                                 com.google.gson.reflect.TypeToken<? extends Either<L,​R>> typeToken,
                                 java.util.function.Predicate<com.google.gson.JsonElement> leftChecker,
                                 java.util.function.Predicate<com.google.gson.JsonElement> rightChecker)
      • EitherTypeAdapter

        public EitherTypeAdapter​(com.google.gson.Gson gson,
                                 com.google.gson.reflect.TypeToken<? extends Either<L,​R>> typeToken,
                                 java.util.function.Predicate<com.google.gson.JsonElement> leftChecker,
                                 java.util.function.Predicate<com.google.gson.JsonElement> rightChecker,
                                 com.google.gson.TypeAdapter<L> leftAdapter,
                                 com.google.gson.TypeAdapter<R> rightAdapter)
    • Method Detail

      • write

        public void write​(com.google.gson.stream.JsonWriter out,
                          Either<L,​R> value)
                   throws java.io.IOException
        Specified by:
        write in class com.google.gson.TypeAdapter<Either<L,​R>>
        Throws:
        java.io.IOException
      • read

        public Either<L,​R> read​(com.google.gson.stream.JsonReader in)
                               throws java.io.IOException
        Specified by:
        read in class com.google.gson.TypeAdapter<Either<L,​R>>
        Throws:
        java.io.IOException
      • create

        protected Either<L,​R> create​(com.google.gson.stream.JsonToken nextToken,
                                           com.google.gson.stream.JsonReader in)
                                    throws java.io.IOException
        Throws:
        java.io.IOException
      • createLeft

        protected Either<L,​R> createLeft​(L obj)
                                        throws java.io.IOException
        Throws:
        java.io.IOException
      • createRight

        protected Either<L,​R> createRight​(R obj)
                                         throws java.io.IOException
        Throws:
        java.io.IOException