/** * Copyright (c) 2016-present, Facebook, Inc. * All rights reserved. * * This source code is licensed under the BSD-style license found in the * LICENSE file in the root directory of this source tree. An additional grant * of patent rights can be found in the PATENTS file in the same directory. */ package com.facebook.keyframes.deserializers; import java.io.IOException; import android.util.JsonReader; import com.facebook.keyframes.model.KFGradient; /** * Deserializer for {@link KFGradient}. * * Root deserializer starts at {@link KFImageDeserializer}. */ public class KFGradientDeserializer { static final AbstractListDeserializer<KFGradient> LIST_DESERIALIZER = new AbstractListDeserializer<KFGradient>() { @Override KFGradient readObjectImpl(JsonReader reader) throws IOException { return readObject(reader); } }; public static KFGradient readObject(JsonReader reader) throws IOException { reader.beginObject(); KFGradient.Builder builder = new KFGradient.Builder(); while (reader.hasNext()) { String name = reader.nextName(); switch (name) { case KFGradient.COLOR_START_JSON_FIELD: builder.colorStart = KFGradientColorDeserializer.readObject(reader); break; case KFGradient.COLOR_END_JSON_FIELD: builder.colorEnd = KFGradientColorDeserializer.readObject(reader); break; default: reader.skipValue(); } } reader.endObject(); return builder.build(); } }