diff options
Diffstat (limited to 'src/main/java/com/juick/json/JSONSerializer.java')
-rw-r--r-- | src/main/java/com/juick/json/JSONSerializer.java | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/src/main/java/com/juick/json/JSONSerializer.java b/src/main/java/com/juick/json/JSONSerializer.java new file mode 100644 index 00000000..8ac72cb0 --- /dev/null +++ b/src/main/java/com/juick/json/JSONSerializer.java @@ -0,0 +1,53 @@ +/* + * 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.util.Iterator; +import java.util.List; +import org.json.JSONObject; + +/** + * + * @author vt + * @param <T> + */ +public abstract class JSONSerializer<T> { + + /** + * + * @param json + * @return + */ + public abstract T deserialize(JSONObject json); + + /** + * + * @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; + } +} |