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.api.domain.BasicUser;
20 import com.atlassian.jira.rest.client.api.domain.Filter;
21 import org.codehaus.jettison.json.JSONException;
22 import org.codehaus.jettison.json.JSONObject;
23
24 import java.net.URI;
25
26
27
28
29
30
31 public class FilterJsonParser implements JsonObjectParser<Filter> {
32
33 @Override
34 public Filter parse(JSONObject json) throws JSONException {
35 final URI selfUri = JsonParseUtil.getSelfUri(json);
36 final long id = json.getLong("id");
37 final String name = json.getString("name");
38 final String jql = json.getString("jql");
39 final String description = json.optString("description");
40 final URI searchUrl = JsonParseUtil.parseURI(json.getString("searchUrl"));
41 final URI viewUrl = JsonParseUtil.parseURI(json.getString("viewUrl"));
42 final BasicUser owner = JsonParseUtil.parseBasicUser(json.getJSONObject("owner"));
43 final boolean favourite = json.getBoolean("favourite");
44 return new Filter(selfUri, id, name, description, jql, viewUrl, searchUrl, owner, favourite);
45 }
46 }