// Retrieve messages
System.out.println("Retrieve messages");
final ArrayList<MessageItem> messages = new ArrayList<MessageItem>();
ConnectionRequest request = new ConnectionRequest(){
Hashtable ht ;
@Override
protected void postResponse(){
}
@Override
protected void readResponse(InputStream input) throws IOException {
JSONParser jp = new JSONParser();
ht = jp.parse(new InputStreamReader(input));
System.out.println("GetMessages JSON result " + ht);
if (ht.get("batchId") != null) {
String batchId = (String) ht.get("batchId");
Vector messageStoreObjects = (Vector) ht.get("messageStoreObjects");
Iterator it = messageStoreObjects.iterator();
while (it.hasNext()) {
Hashtable messageObject = (Hashtable) it.next();
//Message loadedMessage = new Message();
String messageId = (String) messageObject.get("messageId");
String messageSender = (String) messageObject.get("sender");
String content = (String) messageObject.get("content");
String dateTime = (String) messageObject.get("dateTime");
String messageType = (String) messageObject.get("messageType");
String url = (String) messageObject.get("url");
if (url == null) {
url = "None";
} else if (url.length() < 3) {
url = "None";
}
if (messageSender == null) {
messageSender = "Unknown";
} else if (messageSender.length() < 3) {
messageSender = "Unknown";
}
Hashtable values = new Hashtable();
values.put("content", content);
values.put("type", messageType);
values.put("url", url);
values.put("dateTime", dateTime);
values.put("sender", messageSender);
values.put("read", false);
MessageItem item = new MessageItem();
item.setId(messageId);
item.setValues(values);
System.out.println("RETRIEVE save: id: " + messageId + ", sender: " + messageSender + ", content: " + content + ", dateTime: " + dateTime + ", type: " + messageType
+ ", url: " + url);
messages.add(item);
}
sendReceipt(batchId);
System.out.println("Done loading");
}
}
};
// Show loading
request.setDuplicateSupported(true);
String url = MYURLHERE;
System.out.println("Url for message fetch: " + url);
// Call arguments
request.setUrl(url);
request.setPost(false);
NetworkManager.getInstance().addToQueueAndWait(request);
return messages; }
public ArrayList<MessageItem> getMessages(ArrayList<MessageItem> theArray) {
final Object messages = theArray;
ConnectionRequest request = new ConnectionRequest(){
Hashtable ht ;
@Override
protected void postResponse(){
}
@SuppressWarnings({ "unchecked", "rawtypes" })
@Override
protected void readResponse(InputStream input) throws IOException {
JSONParser jp = new JSONParser();
ht = jp.parse(new InputStreamReader(input));
System.out.println("GetMessages JSON result " + ht);
if (ht.get("batchId") != null) {
String batchId = (String) ht.get("batchId");
Vector messageStoreObjects = (Vector) ht.get("messageStoreObjects");
Iterator it = messageStoreObjects.iterator();
while (it.hasNext()) {
Hashtable messageObject = (Hashtable) it.next();
String messageId = (String) messageObject.get("messageId");
String messageSender = (String) messageObject.get("sender");
String content = (String) messageObject.get("content");
String dateTime = (String) messageObject.get("dateTime");
String messageType = (String) messageObject.get("messageType");
String url = (String) messageObject.get("url");
Hashtable values = new Hashtable();
values.put("content", content);
values.put("type", messageType);
values.put("url", url);
values.put("dateTime", dateTime);
values.put("sender", messageSender);
values.put("read", false);
MessageItem item = new MessageItem();
item.setId(messageId);
item.setValues(values);
ArrayList<MessageItem> x = (ArrayList<MessageItem>) messages;
x.add(item);
}
sendReceipt(batchId);
}
}
};
request.setDuplicateSupported(true);
Storage inappStore = Storage.getInstance();
deviceId = (String) inappStore.readObject("deviceId");
String url = "URL HERE";
request.setUrl(url);
request.setPost(false);
NetworkManager.getInstance().addToQueueAndWait(request);
return (ArrayList<MessageItem>) messages;
}