package org.wikipedia.page;
import android.location.Location;
import com.google.gson.TypeAdapter;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;
import org.wikipedia.util.log.L;
import java.io.IOException;
public class GeoTypeAdapter extends TypeAdapter<Location> {
@Override
public void write(JsonWriter out, Location value) throws IOException {
out.beginObject();
out.name(GeoUnmarshaller.LATITUDE).value(value.getLatitude());
out.name(GeoUnmarshaller.LONGITUDE).value(value.getLongitude());
out.endObject();
}
@Override
public Location read(JsonReader in) throws IOException {
Location ret = new Location((String) null);
in.beginObject();
while (in.hasNext()) {
String name = in.nextName();
switch(name) {
case GeoUnmarshaller.LATITUDE:
ret.setLatitude(in.nextDouble());
break;
case GeoUnmarshaller.LONGITUDE:
ret.setLongitude(in.nextDouble());
break;
default:
L.d("name=" + name);
break;
}
}
in.endObject();
return ret;
}
}