// Ensure activity does not already exist
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject entry = jsonArray.getJSONObject(i);
if (entry.getString(ActivityEntry.Field.ID.toString()).equals(activityId)) {
throw new ProtocolException(HttpServletResponse.SC_BAD_REQUEST, "Activity already exists: " + activityId);
}
}
jsonArray.put(jsonEntry);
return ImmediateFuture.newInstance(filterFields(jsonEntry, fields, ActivityEntry.class));
} catch (JSONException je) {
throw new ProtocolException(HttpServletResponse.SC_INTERNAL_SERVER_ERROR, je.getMessage(), je);
}
}