/**
* Copyright 2010 Mark Wyszomierski
*/
package com.joelapenna.foursquare.parsers.json;
import com.joelapenna.foursquare.parsers.json.Parser;
import com.joelapenna.foursquare.types.FoursquareType;
import com.joelapenna.foursquare.types.Group;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
/**
* @date July 13, 2010
* @author Mark Wyszomierski (markww@gmail.com)
*
*/
public abstract class AbstractParser<T extends FoursquareType> implements Parser<T> {
/**
* All derived parsers must implement parsing a JSONObject instance of themselves.
*/
public abstract T parse(JSONObject json) throws JSONException;
/**
* Only the GroupParser needs to implement this.
*/
public Group parse(JSONArray array) throws JSONException {
throw new JSONException("Unexpected JSONArray parse type encountered.");
}
}