public static <T> T parseOptionalJsonObject(final JSONObject json, final String attributeName, final JsonObjectParser<T> jsonParser) throws JSONException { JSONObject attributeObject = getOptionalJsonObject(json, attributeName); return attributeObject != null ? jsonParser.parse(attributeObject) : null; }
public static <T> T parseOptionalJsonObject(final JSONObject json, final String attributeName, final JsonObjectParser<T> jsonParser) throws JSONException { JSONObject attributeObject = getOptionalJsonObject(json, attributeName); return attributeObject != null ? jsonParser.parse(attributeObject) : null; }
@Override public Project parse(JSONObject json) throws JSONException { URI self = JsonParseUtil.getSelfUri(json); final BasicUser lead = JsonParseUtil.parseBasicUser(json.getJSONObject("lead")); final String key = json.getString("key"); final String name = JsonParseUtil.getOptionalString(json, "name"); final String urlStr = JsonParseUtil.getOptionalString(json, "url"); URI uri; try { uri = urlStr == null || "".equals(urlStr) ? null : new URI(urlStr); } catch (URISyntaxException e) { uri = null; } String description = JsonParseUtil.getOptionalString(json, "description"); if ("".equals(description)) { description = null; } final Collection<Version> versions = JsonParseUtil.parseJsonArray(json.getJSONArray("versions"), versionJsonParser); final Collection<BasicComponent> components = JsonParseUtil.parseJsonArray(json.getJSONArray("components"), componentJsonParser); final JSONArray issueTypesArray = json.optJSONArray("issueTypes"); final OptionalIterable<IssueType> issueTypes = JsonParseUtil.parseOptionalJsonArray(issueTypesArray, issueTypeJsonParser); final Collection<BasicProjectRole> projectRoles = basicProjectRoleJsonParser.parse(JsonParseUtil.getOptionalJsonObject(json, "roles")); return new Project(self, key, name, description, lead, uri, versions, components, issueTypes, projectRoles); }
@Override public Project parse(JSONObject json) throws JSONException { URI self = JsonParseUtil.getSelfUri(json); final Iterable<String> expandos = parseExpandos(json); final BasicUser lead = JsonParseUtil.parseBasicUser(json.getJSONObject("lead")); final String key = json.getString("key"); final Long id = JsonParseUtil.getOptionalLong(json, "id"); final String name = JsonParseUtil.getOptionalString(json, "name"); final String urlStr = JsonParseUtil.getOptionalString(json, "url"); URI uri; try { uri = urlStr == null || "".equals(urlStr) ? null : new URI(urlStr); } catch (URISyntaxException e) { uri = null; } String description = JsonParseUtil.getOptionalString(json, "description"); if ("".equals(description)) { description = null; } final Collection<Version> versions = JsonParseUtil.parseJsonArray(json.getJSONArray("versions"), versionJsonParser); final Collection<BasicComponent> components = JsonParseUtil.parseJsonArray(json .getJSONArray("components"), componentJsonParser); final JSONArray issueTypesArray = json.optJSONArray("issueTypes"); final OptionalIterable<IssueType> issueTypes = JsonParseUtil.parseOptionalJsonArray(issueTypesArray, issueTypeJsonParser); final Collection<BasicProjectRole> projectRoles = basicProjectRoleJsonParser.parse(JsonParseUtil .getOptionalJsonObject(json, "roles")); return new Project(expandos, self, key, id, name, description, lead, uri, versions, components, issueTypes, projectRoles); }
@Override public Project parse(JSONObject json) throws JSONException { URI self = JsonParseUtil.getSelfUri(json); final Iterable<String> expandos = parseExpandos(json); final BasicUser lead = JsonParseUtil.parseBasicUser(json.getJSONObject("lead")); final String key = json.getString("key"); final Long id = JsonParseUtil.getOptionalLong(json, "id"); final String name = JsonParseUtil.getOptionalString(json, "name"); final String urlStr = JsonParseUtil.getOptionalString(json, "url"); URI uri; try { uri = urlStr == null || "".equals(urlStr) ? null : new URI(urlStr); } catch (URISyntaxException e) { uri = null; } String description = JsonParseUtil.getOptionalString(json, "description"); if ("".equals(description)) { description = null; } final Collection<Version> versions = JsonParseUtil.parseJsonArray(json.getJSONArray("versions"), versionJsonParser); final Collection<BasicComponent> components = JsonParseUtil.parseJsonArray(json .getJSONArray("components"), componentJsonParser); final JSONArray issueTypesArray = json.optJSONArray("issueTypes"); final OptionalIterable<IssueType> issueTypes = JsonParseUtil.parseOptionalJsonArray(issueTypesArray, issueTypeJsonParser); final Collection<BasicProjectRole> projectRoles = basicProjectRoleJsonParser.parse(JsonParseUtil .getOptionalJsonObject(json, "roles")); return new Project(expandos, self, key, id, name, description, lead, uri, versions, components, issueTypes, projectRoles); }
@Override public AuditRecord parse(final JSONObject json) throws JSONException { final Long id = json.getLong("id"); final String summary = json.getString("summary"); final String createdString = json.getString("created"); final DateTime created = JsonParseUtil.parseDateTime(json, "created"); final String category = json.getString("category"); final String eventSource = json.getString("eventSource"); final String authorKey = JsonParseUtil.getOptionalString(json, "authorKey"); final String remoteAddress = JsonParseUtil.getOptionalString(json, "remoteAddress"); final AuditAssociatedItem objectItem = JsonParseUtil.getOptionalJsonObject(json, "objectItem", associatedItemJsonParser); final OptionalIterable<AuditAssociatedItem> associatedItem = JsonParseUtil.parseOptionalJsonArray(json.optJSONArray("associatedItems"), associatedItemJsonParser); final OptionalIterable<AuditChangedValue> changedValues = JsonParseUtil.parseOptionalJsonArray(json.optJSONArray("changedValues"), changedValueJsonParser); return new AuditRecord(id, summary, remoteAddress, created, category, eventSource, authorKey, objectItem, associatedItem, changedValues); }
@Override public AuditRecord parse(final JSONObject json) throws JSONException { final Long id = json.getLong("id"); final String summary = json.getString("summary"); final String createdString = json.getString("created"); final DateTime created = JsonParseUtil.parseDateTime(json, "created"); final String category = json.getString("category"); final String eventSource = json.getString("eventSource"); final String authorKey = json.getString("authorKey"); final String remoteAddress = JsonParseUtil.getOptionalString(json, "remoteAddress"); final AuditAssociatedItem objectItem = JsonParseUtil.getOptionalJsonObject(json, "objectItem", associatedItemJsonParser); final OptionalIterable<AuditAssociatedItem> associatedItem = JsonParseUtil.parseOptionalJsonArray(json.optJSONArray("associatedItems"), associatedItemJsonParser); final OptionalIterable<AuditChangedValue> changedValues = JsonParseUtil.parseOptionalJsonArray(json.optJSONArray("changedValues"), changedValueJsonParser); return new AuditRecord(id, summary, remoteAddress, created, category, eventSource, authorKey, objectItem, associatedItem, changedValues); }