package de.stephanlindauer.criticalmaps.handler; import org.json.JSONObject; import javax.inject.Inject; import de.stephanlindauer.criticalmaps.events.Events; import de.stephanlindauer.criticalmaps.model.ChatModel; import de.stephanlindauer.criticalmaps.model.OtherUsersLocationModel; import de.stephanlindauer.criticalmaps.provider.EventBusProvider; public class ServerResponseProcessor { private final OtherUsersLocationModel otherUsersLocationModel; private final EventBusProvider eventService; private final ChatModel chatModel; @Inject public ServerResponseProcessor(OtherUsersLocationModel otherUsersLocationModel, EventBusProvider eventService, ChatModel chatModel) { this.otherUsersLocationModel = otherUsersLocationModel; this.eventService = eventService; this.chatModel = chatModel; } public void process(final String jsonString) { try { final JSONObject jsonObject = new JSONObject(jsonString); otherUsersLocationModel.setNewJSON(jsonObject.getJSONObject("locations")); chatModel.setNewJson(jsonObject.getJSONObject("chatMessages")); eventService.post(Events.NEW_SERVER_RESPONSE_EVENT); } catch (Exception ignored) { } } }