package com.saikali.android_skwissh.objects;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.json.JSONException;
import org.json.JSONObject;
import com.saikali.android_skwissh.objects.SkwisshServerGroupContent.SkwisshServerGroupItem;
public class SkwisshServerContent {
public static class SkwisshServerItem {
private String id;
private String hostname;
private boolean isAvailable;
private SkwisshServerGroupItem server_group = null;
private ArrayList<SkwisshSensorItem> SENSORS = new ArrayList<SkwisshSensorItem>();
private Map<String, SkwisshSensorItem> SENSORS_MAP = new HashMap<String, SkwisshSensorItem>();
public SkwisshServerItem(JSONObject json, SkwisshServerGroupItem server_group) throws JSONException {
this.id = Integer.toString(json.getInt("pk"));
this.server_group = server_group;
this.hostname = json.getJSONObject("fields").get("hostname").toString();
this.isAvailable = json.getJSONObject("fields").getBoolean("state");
}
public void addSensor(SkwisshSensorItem sensor) {
this.SENSORS.add(sensor);
this.SENSORS_MAP.put(sensor.getId(), sensor);
}
public void clearSensors() {
this.SENSORS.clear();
this.SENSORS_MAP.clear();
}
public String getId() {
return this.id;
}
public String getHostname() {
return this.hostname;
}
public Boolean isAvailable() {
return this.isAvailable;
}
public ArrayList<SkwisshSensorItem> getSensors() {
return this.SENSORS;
}
public SkwisshSensorItem getSensor(String sensor_id) {
return this.SENSORS_MAP.get(sensor_id);
}
public SkwisshServerGroupItem getServerGroup() {
return this.server_group;
}
}
public static List<SkwisshServerItem> ITEMS = new ArrayList<SkwisshServerItem>();
public static Map<String, SkwisshServerItem> ITEM_MAP = new HashMap<String, SkwisshServerItem>();
public static void addItem(SkwisshServerItem item) {
ITEMS.add(item);
ITEM_MAP.put(item.getId(), item);
}
}