package org.jboss.test.capedwarf.common.serialization.support; import org.jboss.capedwarf.common.serialization.JSONAware; import org.json.JSONException; import org.json.JSONObject; import java.io.Serializable; /** * @author <a href="mailto:ales.justin@jboss.org">Ales Justin</a> */ public class TestData implements JSONAware, Serializable { private static final long serialVersionUID = 1l; private long id; private String topic; private double x; private String extra; public void writeJSONObject(JSONObject json) throws JSONException { json.put("id", id); json.put("topic", topic); json.put("x", x); json.putOpt("extra", extra); } public void readJSONObject(JSONObject json) throws JSONException { id = json.getLong("id"); topic = json.getString("topic"); x = json.getDouble("x"); extra = json.optString("extra"); } public long getId() { return id; } public void setId(long id) { this.id = id; } public String getTopic() { return topic; } public void setTopic(String topic) { this.topic = topic; } public double getX() { return x; } public void setX(double x) { this.x = x; } public String getExtra() { return extra; } public void setExtra(String extra) { this.extra = extra; } @Override public int hashCode() { return topic.hashCode(); } @Override public boolean equals(Object obj) { if (obj instanceof TestData == false) return false; TestData td = (TestData) obj; return (id == td.id) && (x == td.x) && (topic.equals(td.topic)); } }