private Map<String, Object> toMap(final Announcement announcement) { final Map<String, Object> map = new HashMap<String, Object>(); map.put("sid", DaoUtils.writeSid(announcement.getSid())); map.put("date_created", DaoUtils.writeDateTime(announcement.getDateCreated())); map.put("account_sid", DaoUtils.writeSid(announcement.getAccountSid())); map.put("gender", announcement.getGender()); map.put("language", announcement.getLanguage()); map.put("text", announcement.getText()); map.put("uri", DaoUtils.writeUri(announcement.getUri())); return map; }
private Announcement toAnnouncement(final Map<String, Object> map) { final Sid sid = DaoUtils.readSid(map.get("sid")); final DateTime dateCreated = DaoUtils.readDateTime(map.get("date_created")); final Sid accountSid = DaoUtils.readSid(map.get("account_sid")); final String gender = DaoUtils.readString(map.get("gender")); final String language = DaoUtils.readString(map.get("language")); final String text = DaoUtils.readString(map.get("text")); final URI uri = DaoUtils.readUri(map.get("uri")); return new Announcement(sid, dateCreated, accountSid, gender, language, text, uri); }
private Announcement createFrom(String accountSid, MultivaluedMap<String, String> data) throws Exception { Sid sid = Sid.generate(Sid.Type.ANNOUNCEMENT); String gender = data.getFirst("Gender"); if (gender == null) { gender = "man"; } String language = data.getFirst("Language"); if (language == null) { language = "en"; } String text = data.getFirst("Text"); if (text != null) { precache(text, gender, language); } if(logger.isInfoEnabled()){ logger.info("Creating annnouncement"); } Announcement announcement = new Announcement(sid, new Sid(accountSid), gender, language, text, uri); return announcement; }
@Override public JsonElement serialize(final Announcement announcement, Type type, final JsonSerializationContext context) { final JsonObject object = new JsonObject(); writeSid(announcement.getSid(), object); writeDateCreated(announcement.getDateCreated(), object); writeAccountSid(announcement.getAccountSid(), object); writeGender(announcement.getGender(), object); writeLanguage(announcement.getLanguage(), object); writeText(announcement.getText(), object); if(announcement.getUri() != null) writeUri(announcement.getUri(), object); return object; }
@Override public void marshal(Object object, HierarchicalStreamWriter writer, MarshallingContext context) { final Announcement announcement = (Announcement) object; writer.startNode("Announcement"); writeSid(announcement.getSid(), writer); writeDateCreated(announcement.getDateCreated(), writer); writeAccountSid(announcement.getAccountSid(), writer); writeGender(announcement.getGender(), writer); writeLanguage(announcement.getLanguage(), writer); writeText(announcement.getText(), writer); writeUri(announcement.getUri(), writer); writer.endNode(); }