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.LoginInfo;
20 import com.atlassian.jira.rest.client.api.domain.Session;
21 import org.codehaus.jettison.json.JSONException;
22 import org.codehaus.jettison.json.JSONObject;
23
24 import java.net.URI;
25
26 public class SessionJsonParser implements JsonObjectParser<Session> {
27 private final LoginInfoJsonParser loginInfoJsonParser = new LoginInfoJsonParser();
28
29 @Override
30 public Session parse(JSONObject json) throws JSONException {
31 final URI userUri = JsonParseUtil.getSelfUri(json);
32 final String username = json.getString("name");
33 final LoginInfo loginInfo = loginInfoJsonParser.parse(json.getJSONObject("loginInfo"));
34 return new Session(userUri, username, loginInfo);
35 }
36 }