aboutsummaryrefslogtreecommitdiff
path: root/juick-core/src/main/java/com/juick/json
diff options
context:
space:
mode:
authorGravatar Vitaly Takmazov2016-11-28 14:37:02 +0300
committerGravatar Vitaly Takmazov2016-11-28 14:37:02 +0300
commit5b2bd7f928bbf9d3233ff029ed5c09ac46daf0de (patch)
treecfad7f15e35c51d11a488df5a9b2be5300b9af54 /juick-core/src/main/java/com/juick/json
parentc252087c54e91e63f89775eba4c65cf87ae21e5d (diff)
all components using jackson now, org.json serializer moved to compatibility tests package
Diffstat (limited to 'juick-core/src/main/java/com/juick/json')
-rw-r--r--juick-core/src/main/java/com/juick/json/JSONSerializer.java73
-rw-r--r--juick-core/src/main/java/com/juick/json/MessageSerializer.java145
-rw-r--r--juick-core/src/main/java/com/juick/json/PlaceSerializer.java73
-rw-r--r--juick-core/src/main/java/com/juick/json/UserSerializer.java66
4 files changed, 0 insertions, 357 deletions
diff --git a/juick-core/src/main/java/com/juick/json/JSONSerializer.java b/juick-core/src/main/java/com/juick/json/JSONSerializer.java
deleted file mode 100644
index 3dc9e04e..00000000
--- a/juick-core/src/main/java/com/juick/json/JSONSerializer.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
-package com.juick.json;
-
-import java.text.ParseException;
-import java.util.Iterator;
-import java.util.List;
-import org.json.JSONObject;
-
-/**
- *
- * @author vt
- * @param <T>
- */
-public abstract class JSONSerializer<T> {
-
- public enum URIScheme {
- Plain,
- Secure
- }
-
- private URIScheme uriScheme;
-
- public URIScheme getUriScheme() {
- return uriScheme;
- }
-
- public void setUriScheme(URIScheme uriScheme) {
- this.uriScheme = uriScheme;
- }
-
- public JSONSerializer() {
- this.uriScheme = URIScheme.Plain;
- }
-
- /**
- *
- * @param json
- * @return
- */
- public abstract T deserialize(JSONObject json) throws ParseException;
-
- /**
- *
- * @param obj
- * @return
- */
- public abstract JSONObject serialize(T obj);
-
- /**
- *
- * @param objs
- * @return
- */
- public String serializeList(List<T> objs) {
- String json = "[";
-
- Iterator<T> i = objs.iterator();
- while (i.hasNext()) {
- T m = i.next();
- if (json.length() > 1) {
- json += ",";
- }
- json += serialize(m).toString();
- }
-
- json += "]";
- return json;
- }
-}
diff --git a/juick-core/src/main/java/com/juick/json/MessageSerializer.java b/juick-core/src/main/java/com/juick/json/MessageSerializer.java
deleted file mode 100644
index ebc3b0b0..00000000
--- a/juick-core/src/main/java/com/juick/json/MessageSerializer.java
+++ /dev/null
@@ -1,145 +0,0 @@
-/*
- * Juick
- * Copyright (C) 2008-2011, Ugnich Anton
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-package com.juick.json;
-
-import com.juick.Message;
-import com.juick.Tag;
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.TimeZone;
-import java.util.stream.Collectors;
-
-/**
- *
- * @author Ugnich Anton
- */
-public class MessageSerializer extends JSONSerializer<Message> {
-
- private final static Logger LOGGER = LoggerFactory.getLogger(MessageSerializer.class);
-
- UserSerializer userSerializer = new UserSerializer();
- PlaceSerializer placeSerializer = new PlaceSerializer();
-
- private final SimpleDateFormat df;
-
- public MessageSerializer() {
- df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
- df.setTimeZone(TimeZone.getTimeZone("UTC"));
- }
-
- @Override
- public Message deserialize(JSONObject json) throws JSONException, ParseException {
- com.juick.Message jmsg = new com.juick.Message();
- jmsg.setMid(json.getInt("mid"));
- if (json.has("rid")) {
- jmsg.setRid(json.getInt("rid"));
- }
- if (json.has("replyto")) {
- jmsg.setReplyto(json.getInt("replyto"));
- }
-
- jmsg.FriendsOnly = json.has("friendsonly");
- jmsg.ReadOnly = json.has("readonly");
-
- jmsg.setText(json.getString("body").replace("&quot;", "\""));
- jmsg.setUser(userSerializer.deserialize(json.getJSONObject("user")));
-
- jmsg.setDate(df.parse(json.getString("timestamp")));
-
- if (json.has("tags")) {
- JSONArray tags = json.getJSONArray("tags");
- for (int n = 0; n < tags.length(); n++) {
- jmsg.getTags().add(new Tag(tags.getString(n).replace("&quot;", "\"")));
- }
- }
-
- if (json.has("replies")) {
- jmsg.Replies = json.getInt("replies");
- }
-
- if (json.has("photo")) {
- jmsg.Photo = json.getJSONObject("photo").getString("small");
- }
-
- return jmsg;
- }
-
- @Override
- public JSONObject serialize(Message msg) {
- JSONObject json = new JSONObject();
-
- try {
- if (msg.getMid() > 0) {
- json.put("mid", msg.getMid());
- }
- if (msg.getRid() > 0) {
- json.put("rid", msg.getRid());
- }
- if (msg.getReplyto() > 0) {
- json.put("replyto", msg.getReplyto());
- }
- if (msg.FriendsOnly) {
- json.put("friendsonly", 1);
- }
- if (msg.ReadOnly) {
- json.put("readonly", 1);
- }
- if (msg.getText() != null) {
- json.put("body", msg.getText());
- }
- if (msg.getDate() != null) {
- json.put("timestamp", df.format(msg.getDate()));
- }
- if (msg.getUser() != null) {
- json.put("user", userSerializer.serialize(msg.getUser()));
- }
- if (msg.getTags() != null && msg.getTags().size() > 0) {
- json.put("tags", new JSONArray(msg.getTags().stream().map(Tag::getName).collect(Collectors.toList())));
- }
- if (msg.Replies > 0) {
- json.put("replies", msg.Replies);
- }
- if (msg.Place != null) {
- json.put("place", placeSerializer.serialize(msg.Place));
- }
- if (msg.AttachmentType != null) {
- String fname = msg.getMid() + (msg.getRid() > 0 ? "-" + msg.getRid() : "") + "." + msg.AttachmentType;
- JSONObject photo = new JSONObject();
- String protocol = getUriScheme() == URIScheme.Plain ? "http:" : "https:";
- photo.put("thumbnail", protocol + "//i.juick.com/ps/" + fname);
- photo.put("small", protocol + "//i.juick.com/photos-512/" + fname);
- photo.put("medium", protocol + "//i.juick.com/photos-1024/" + fname);
- json.put("photo", photo);
- }
- } catch (JSONException e) {
- LOGGER.error("JSON Exception", e);
- }
-
- return json;
- }
-
- public SimpleDateFormat getDf() {
- return df;
- }
-}
diff --git a/juick-core/src/main/java/com/juick/json/PlaceSerializer.java b/juick-core/src/main/java/com/juick/json/PlaceSerializer.java
deleted file mode 100644
index f433f7f0..00000000
--- a/juick-core/src/main/java/com/juick/json/PlaceSerializer.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Juick
- * Copyright (C) 2008-2011, Ugnich Anton
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-package com.juick.json;
-
-import com.juick.Place;
-import org.json.JSONException;
-import org.json.JSONObject;
-
-/**
- *
- * @author Ugnich Anton
- */
-public class PlaceSerializer extends JSONSerializer<Place> {
-
- @Override
- public Place deserialize(JSONObject json) throws JSONException {
- Place jplace = new Place();
-
- jplace.pid = json.getInt("pid");
- jplace.lat = json.getDouble("lat");
- jplace.lon = json.getDouble("lon");
- jplace.name = json.getString("name").replace("&quot;", "\"");
- if (json.has("users")) {
- jplace.users = json.getInt("users");
- }
- if (json.has("messages")) {
- jplace.messages = json.getInt("messages");
- }
- if (json.has("distance")) {
- jplace.distance = json.getInt("distance");
- }
-
- return jplace;
- }
-
- @Override
- public JSONObject serialize(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/juick-core/src/main/java/com/juick/json/UserSerializer.java b/juick-core/src/main/java/com/juick/json/UserSerializer.java
deleted file mode 100644
index 120645a6..00000000
--- a/juick-core/src/main/java/com/juick/json/UserSerializer.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Juick
- * Copyright (C) 2008-2011, Ugnich Anton
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-package com.juick.json;
-
-import com.juick.User;
-import org.json.JSONException;
-import org.json.JSONObject;
-
-/**
- *
- * @author Ugnich Anton
- */
-public class UserSerializer extends JSONSerializer<User> {
-
- @Override
- public User deserialize(JSONObject json) throws JSONException {
- User juser = new User();
- juser.setUid(json.getInt("uid"));
- juser.setName(json.getString("uname"));
- if (json.has("fullname")) {
- juser.setFullName(json.getString("fullname"));
- }
- return juser;
- }
-
- @Override
- public JSONObject serialize(User user) {
- JSONObject json = new JSONObject();
-
- try {
- if (user.getUid() > 0) {
- json.put("uid", user.getUid());
- }
- if (user.getName() != null) {
- json.put("uname", user.getName());
- }
- if (user.getFullName() != null) {
- json.put("fullname", user.getFullName());
- }
- if (user.getJid() != null) {
- json.put("jid", user.getJid());
- }
- if (user.getUnreadCount() > 0) {
- json.put("unreadCount", user.getUnreadCount());
- }
- } catch (JSONException e) {
- }
-
- return json;
- }
-}