package mediabrowser.apiinteraction.connectionmanager; import mediabrowser.apiinteraction.EmptyResponse; import mediabrowser.apiinteraction.Response; import mediabrowser.model.apiclient.ServerInfo; import mediabrowser.model.connect.ConnectAuthenticationExchangeResult; import mediabrowser.model.serialization.IJsonSerializer; public class ExchangeTokenResponse extends Response<String> { private IJsonSerializer jsonSerializer; private ServerInfo server; private EmptyResponse response; public ExchangeTokenResponse(IJsonSerializer jsonSerializer, ServerInfo server, EmptyResponse response) { this.jsonSerializer = jsonSerializer; this.server = server; this.response = response; } @Override public void onResponse(String jsonResponse) { ConnectAuthenticationExchangeResult obj = jsonSerializer.DeserializeFromString(jsonResponse, ConnectAuthenticationExchangeResult.class); server.setUserId(obj.getLocalUserId()); server.setAccessToken(obj.getAccessToken()); response.onResponse(); } @Override public void onError(Exception ex) { server.setUserId(null); server.setAccessToken(null); response.onResponse(); } }