private <T extends ReviewRequestBase> T fillReviewRequestBase( T reviewRequest, JSONObject jsonReviewRequest) throws JSONException { reviewRequest.setId(jsonReviewRequest.getInt("id")); reviewRequest.setSummary(jsonReviewRequest.getString("summary")); reviewRequest.setTestingDone(jsonReviewRequest.getString("testing_done")); reviewRequest.setDescription(jsonReviewRequest.getString("description")); reviewRequest.setPublic(jsonReviewRequest.getBoolean("public")); reviewRequest.setBranch(jsonReviewRequest.getString("branch")); // bugs reviewRequest.setBugsClosed(readStringArray(jsonReviewRequest, "bugs_closed")); // target people JSONArray jsonTargetPeople = jsonReviewRequest.getJSONArray("target_people"); List<String> targetPeople = new ArrayList<String>(); for (int j = 0; j < jsonTargetPeople.length(); j++) targetPeople.add(jsonTargetPeople.getJSONObject(j).getString("title")); reviewRequest.setTargetPeople(targetPeople); // target groups JSONArray jsonTargetGroups = jsonReviewRequest.getJSONArray("target_groups"); List<String> targetGroups = new ArrayList<String>(); for (int j = 0; j < jsonTargetGroups.length(); j++) targetGroups.add(jsonTargetGroups.getJSONObject(j).getString("title")); reviewRequest.setTargetGroups(targetGroups); return reviewRequest; }