Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package main.java;
- import com.google.gson.*;
- import java.lang.reflect.Type;
- /**
- * Created by polina on 26.05.15.
- */
- public class ClientInfoDeserializer implements JsonDeserializer<ClientInfo> {
- @Override
- public ClientInfo deserialize(JsonElement jsonElement, Type type, JsonDeserializationContext jsonDeserializationContext) throws JsonParseException {
- JsonObject jsonObject = jsonElement.getAsJsonObject();
- ClientInfo clientInfo = new ClientInfo();
- String[] data = jsonObject.get("MapSize").getAsString().split(" ");
- clientInfo.MapSize = new Point(Integer.parseInt(data[0]), Integer.parseInt(data[1]));
- clientInfo.Hp = jsonObject.get("Hp").getAsInt();
- data = jsonObject.get("StartPosition").getAsString().split(" ");
- clientInfo.StartPosition = new Point(Integer.parseInt(data[0]), Integer.parseInt(data[1]));
- data = jsonObject.get("Target").getAsString().split(" ");
- clientInfo.Target = new Point(Integer.parseInt(data[0]), Integer.parseInt(data[1]));
- JsonArray jsonArray = jsonObject.get("VisibleMap").getAsJsonArray();
- for (int i = 0; i < jsonArray.size(); i++) {
- JsonArray jsonArray1 = jsonArray.get(i).getAsJsonArray();
- for (int j = 0; j < jsonArray1.size(); j++) {
- clientInfo.VisibleMap[i][j] = jsonArray1.get(j).getAsInt();
- }
- }
- return clientInfo;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement