/* * 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 */ public abstract class JSONSerializer { 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 objs) { String json = "["; Iterator i = objs.iterator(); while (i.hasNext()) { T m = i.next(); if (json.length() > 1) { json += ","; } json += serialize(m).toString(); } json += "]"; return json; } }