Class EitherTypeAdapter<L,R>
- java.lang.Object
-
- com.google.gson.TypeAdapter<Either<L,R>>
-
- org.eclipse.lsp4j.jsonrpc.json.adapters.EitherTypeAdapter<L,R>
-
- Direct Known Subclasses:
EitherTypeAdapterFactory.Adapter
public class EitherTypeAdapter<L,R> extends com.google.gson.TypeAdapter<Either<L,R>>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static classEitherTypeAdapter.EitherTypeArgument<T>static classEitherTypeAdapter.Factorystatic classEitherTypeAdapter.ListCheckerA predicate for the case that a type alternative is a list.static classEitherTypeAdapter.PropertyCheckerA predicate that is useful for checking alternatives in case both the left and the right type are JSON object types.
-
Field Summary
Fields Modifier and Type Field Description protected EitherTypeAdapter.EitherTypeArgument<L>leftprotected java.util.function.Predicate<com.google.gson.JsonElement>leftCheckerprotected EitherTypeAdapter.EitherTypeArgument<R>rightprotected java.util.function.Predicate<com.google.gson.JsonElement>rightCheckerprotected com.google.gson.reflect.TypeToken<? extends Either<L,R>>typeToken
-
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)voidwrite(com.google.gson.stream.JsonWriter out, Either<L,R> value)
-
-
-
Field Detail
-
left
protected final EitherTypeAdapter.EitherTypeArgument<L> left
-
right
protected final EitherTypeAdapter.EitherTypeArgument<R> right
-
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
-
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
-
-