1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package com.atlassian.jira.rest.client.internal.json;
18
19 import com.atlassian.jira.rest.client.domain.BasicIssue;
20 import com.atlassian.jira.rest.client.domain.SearchResult;
21 import org.codehaus.jettison.json.JSONException;
22 import org.codehaus.jettison.json.JSONObject;
23
24 import java.util.Collection;
25
26 public class SearchResultJsonParser implements JsonObjectParser<SearchResult> {
27 private final BasicIssueJsonParser basicIssueJsonParser = new BasicIssueJsonParser();
28
29 @Override
30 public SearchResult parse(JSONObject json) throws JSONException {
31 final int startAt = json.getInt("startAt");
32 final int maxResults = json.getInt("maxResults");
33 final int total = json.getInt("total");
34 final Collection<BasicIssue> issues = JsonParseUtil.parseJsonArray(json.getJSONArray("issues"), basicIssueJsonParser);
35 return new SearchResult(startAt, maxResults, total, issues);
36 }
37 }