Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public final class EmptyListToNull implements JsonAdapter.Factory {
- @Override
- public JsonAdapter<?> create(Type type, Set<? extends Annotation> annotations, Moshi moshi) {
- Class<?> rawType = Types.getRawType(type);
- if (checkAssignments(rawType)) {
- return null; // We don't want to decorate actual collection types.
- }
- final JsonAdapter<Object> delegate = moshi.nextAdapter(this, type, annotations);
- return new JsonAdapter<Object>() {
- @Override public Object fromJson(JsonReader reader) throws IOException {
- if (reader.peek() != BEGIN_ARRAY) {
- return delegate.fromJson(reader);
- }
- reader.beginArray();
- reader.endArray();
- return null;
- }
- @Override public void toJson(JsonWriter writer, Object value) throws IOException {
- delegate.toJson(writer, value);
- }
- };
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement