package com.dimuthuupeksha.viewer.android.applib.representation; import java.io.IOException; import java.io.Serializable; import java.util.List; import org.codehaus.jackson.JsonFactory; import org.codehaus.jackson.JsonGenerationException; import org.codehaus.jackson.JsonParseException; import org.codehaus.jackson.JsonParser; import org.codehaus.jackson.map.JsonMappingException; import org.codehaus.jackson.map.ObjectMapper; /* Author - Dimuthu Upeksha*/ public class JsonRepr implements Serializable { protected List<Link> links; public static <T> T fromString(Class<T> t, String str) { JsonParser jp; try { jp = new JsonFactory().createJsonParser(str); ObjectMapper objectMapper = new ObjectMapper(); T res = objectMapper.readValue(jp, t); return res; } catch (JsonParseException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return null; } public String AsJson() { ObjectMapper mapper = new ObjectMapper(); try { String data = mapper.writeValueAsString(this); return data; } catch (JsonGenerationException e) { e.printStackTrace(); } catch (JsonMappingException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return null; } public Link getLinkByRel(String rel) { if (links == null) { return null; } else { for (Link link : links) { if (link.getRel().replace("urn:org.restfulobjects:rels/", "").trim().equals(rel)) { return link; } } } return null; } public List<Link> getLinks() { return links; } public void setLinks(List<Link> links) { this.links = links; } }