code: @SuppressWarnings({"unchecked", "unused"})
  	protected <T extends IGPSObject> List<T> parseObjectArray(final JSONArray array, final Class<T> type) throws ParseException {
  		try {
  			if (array == null) {
  				return new ArrayList<T>(10);
  			}
  			final List<T> objects = new ArrayList<T>(10);
  			for (int i = 0; i < array.length(); i++) {
  				objects.add((T) this.parse(array.getJSONObject(i)));
  			}
  			return objects;
  		} catch (final JSONException e) {
  			throw new ParseException("Parsing failed", e);
  		}
  	}
docs: parse a whole JSONArray into a list of IGPSObjects