package com.github.spreadsheets.android.api.requests; import com.android.volley.NetworkResponse; import com.android.volley.ParseError; import com.android.volley.Response; import com.android.volley.Response.ErrorListener; import com.android.volley.Response.Listener; import com.android.volley.toolbox.HttpHeaderParser; import com.github.spreadsheets.android.api.model.SpreadsheetFeed; import java.io.ByteArrayInputStream; import java.io.IOException; import java.io.InputStreamReader; public class SpreadsheetFeedRequest extends SpreadsheetRequest<SpreadsheetFeed> { public SpreadsheetFeedRequest(Listener<SpreadsheetFeed> listener, ErrorListener errorListener) { super(Method.GET, "https://spreadsheets.google.com/feeds/spreadsheets/private/full", listener, errorListener); } @Override protected Response<SpreadsheetFeed> parseNetworkResponse(NetworkResponse response) { try { SpreadsheetFeed feed = parser .parseAndClose(new InputStreamReader(new ByteArrayInputStream(response.data)) , SpreadsheetFeed.class); return Response.success(feed, HttpHeaderParser.parseCacheHeaders(response)); } catch (IOException e) { return Response.error(new ParseError(e)); } } }