public static Manifest manifestFromJSonObject(JSONObject parsedObject) { String versionStr = ""; String guid = ""; String urlRoot = ""; Object tmp = parsedObject.get(ManifestConstants.VERSION); if (null != tmp) { versionStr = tmp.toString(); } tmp = parsedObject.get(ManifestConstants.GUID); if (null != tmp) { guid = tmp.toString(); } tmp = parsedObject.get(ManifestConstants.URLROOT); if (null != tmp) { urlRoot = tmp.toString(); } Manifest toReturn = new Manifest(Util.intFromStringWithoutThrow(versionStr), guid, urlRoot); tmp = parsedObject.get(ManifestConstants.ENTRIES); if (tmp instanceof JSONArray) { JSONArray entries = (JSONArray) tmp; for (Object tmpEntry : entries) { if (tmpEntry instanceof JSONObject) { Entry e = entryFromJsonObject((JSONObject) tmpEntry); if (null != e) { toReturn.addEntry(e); } } } } return toReturn; }