aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Ugnich Anton2012-01-22 23:01:24 +0700
committerGravatar Ugnich Anton2012-01-22 23:01:24 +0700
commitcbcc5a5e4c1edd4689c756a2548a5087201ee74e (patch)
treea6b0d603af873ba3de7830121c3aedaa99f3f6c1
parentbd7cfe95f4d15719f31e17d9aee6830066644948 (diff)
toJSON()
-rw-r--r--src/com/juick/json/Message.java54
-rw-r--r--src/com/juick/json/Place.java28
-rw-r--r--src/com/juick/json/User.java25
3 files changed, 98 insertions, 9 deletions
diff --git a/src/com/juick/json/Message.java b/src/com/juick/json/Message.java
index 83a8624f..da817a01 100644
--- a/src/com/juick/json/Message.java
+++ b/src/com/juick/json/Message.java
@@ -29,10 +29,10 @@ import org.json.JSONObject;
*
* @author Ugnich Anton
*/
-public class Message extends com.juick.Message {
+public class Message {
- public static Message parseJSON(JSONObject json) throws JSONException {
- Message jmsg = new Message();
+ public static com.juick.Message parseJSON(JSONObject json) throws JSONException {
+ com.juick.Message jmsg = new com.juick.Message();
jmsg.MID = json.getInt("mid");
if (json.has("rid")) {
jmsg.RID = json.getInt("rid");
@@ -67,4 +67,52 @@ public class Message extends com.juick.Message {
return jmsg;
}
+
+ public static JSONObject toJSON(com.juick.Message msg) {
+ JSONObject json = new JSONObject();
+
+ try {
+ if (msg.MID > 0) {
+ json.put("mid", msg.MID);
+ }
+ if (msg.RID > 0) {
+ json.put("rid", msg.RID);
+ }
+ if (msg.Text != null) {
+ json.put("body", msg.Text);
+ }
+ if (msg.Timestamp != null) {
+ json.put("timestamp", msg.Timestamp);
+ }
+ if (msg.User != null) {
+ json.put("user", com.juick.json.User.toJSON(msg.User));
+ }
+ if (msg.tags != null && msg.tags.size() > 0) {
+ json.put("tags", new JSONArray(msg.tags));
+ }
+ if (msg.replies > 0) {
+ json.put("replies", msg.replies);
+ }
+ if (msg.place != null) {
+ json.put("place", com.juick.json.Place.toJSON(msg.place));
+ }
+ if (msg.AttachmentType != null) {
+ String fname = msg.MID + (msg.RID > 0 ? "-" + msg.RID : "") + "." + msg.AttachmentType;
+ if (msg.AttachmentType.equals("jpg")) {
+ JSONObject photo = new JSONObject();
+ photo.put("thumbnail", "http://i.juick.com/ps/" + fname);
+ photo.put("small", "http://i.juick.com/photo-512/" + fname);
+ photo.put("medium", "http://i.juick.com/photo-1024/" + fname);
+ json.put("photo", photo);
+ } else {
+ JSONObject video = new JSONObject();
+ video.put("mp4", "http://i.juick.com/video/" + fname);
+ json.put("video", video);
+ }
+ }
+ } catch (JSONException e) {
+ }
+
+ return json;
+ }
}
diff --git a/src/com/juick/json/Place.java b/src/com/juick/json/Place.java
index 63a5929c..4e3e5579 100644
--- a/src/com/juick/json/Place.java
+++ b/src/com/juick/json/Place.java
@@ -25,10 +25,10 @@ import org.json.JSONObject;
*
* @author Ugnich Anton
*/
-public class Place extends com.juick.Place {
+public class Place {
- public static Place parseJSON(JSONObject json) throws JSONException {
- Place jplace = new Place();
+ public static com.juick.Place parseJSON(JSONObject json) throws JSONException {
+ com.juick.Place jplace = new com.juick.Place();
jplace.pid = json.getInt("pid");
jplace.lat = json.getDouble("lat");
@@ -55,4 +55,26 @@ public class Place extends com.juick.Place {
return jplace;
}
+
+ public static JSONObject toJSON(com.juick.Place place) {
+ JSONObject json = new JSONObject();
+
+ try {
+ if (place.pid > 0) {
+ json.put("pid", place.pid);
+ }
+ if (place.lat >= -90 && place.lat <= 90) {
+ json.put("lat", place.lat);
+ }
+ if (place.lon >= -180 && place.lon <= 180) {
+ json.put("lon", place.lon);
+ }
+ if (place.name != null) {
+ json.put("name", place.name);
+ }
+ } catch (JSONException e) {
+ }
+
+ return json;
+ }
}
diff --git a/src/com/juick/json/User.java b/src/com/juick/json/User.java
index b4e0e7e8..43ee4803 100644
--- a/src/com/juick/json/User.java
+++ b/src/com/juick/json/User.java
@@ -24,10 +24,10 @@ import org.json.JSONObject;
*
* @author Ugnich Anton
*/
-public class User extends com.juick.User {
+public class User {
- public static User parseJSON(JSONObject json) throws JSONException {
- User juser = new User();
+ public static com.juick.User parseJSON(JSONObject json) throws JSONException {
+ com.juick.User juser = new com.juick.User();
juser.UID = json.getInt("uid");
juser.UName = json.getString("uname");
if (json.has("fullname")) {
@@ -35,4 +35,23 @@ public class User extends com.juick.User {
}
return juser;
}
+
+ public static JSONObject toJSON(com.juick.User user) {
+ JSONObject json = new JSONObject();
+
+ try {
+ if (user.UID > 0) {
+ json.put("uid", user.UID);
+ }
+ if (user.UName != null) {
+ json.put("uname", user.UName);
+ }
+ if (user.FullName != null) {
+ json.put("fullname", user.FullName);
+ }
+ } catch (JSONException e) {
+ }
+
+ return json;
+ }
}