package de.tud.kom.socom.util.datatypes; import java.util.LinkedList; import java.util.List; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; import org.json.JSONString; import de.tud.kom.socom.util.JSONUtils; import de.tud.kom.socom.util.LoggerFactory; public class NetworkPostSupport implements JSONString { private long count; private List<PostSupporters> supporters; public NetworkPostSupport(long count) { this.count = count; this.supporters = new LinkedList<NetworkPostSupport.PostSupporters>(); } public NetworkPostSupport(long count, List<PostSupporters> supporters) { this.count = count; this.supporters = supporters; } public void addSupporter(PostSupporters sup) { this.supporters.add(sup); } public long getCount() { return count; } public void setCount(int count) { this.count = count; } public List<PostSupporters> getSupporters() { return supporters; } public void setSupporters(List<PostSupporters> supporters) { this.supporters = supporters; } public class PostSupporters implements JSONString { private String name; private String id; public PostSupporters(String name, String id) { super(); this.name = name; this.id = id; } public String getName() { return name; } public String getId() { return id; } @Override public String toJSONString() { try { return JSONUtils.JSONToString(new JSONObject().put("name", name).put("id", id)); } catch (JSONException e) { LoggerFactory.getLogger().Error(e); return null; } } } @Override public String toJSONString() { try { JSONObject json = new JSONObject(); json.put("count", count); json.put("supporters", new JSONArray(supporters)); return JSONUtils.JSONToString(json); } catch (JSONException e) { LoggerFactory.getLogger().Error(e); return null; } } }