You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@usergrid.apache.org by sf...@apache.org on 2014/09/23 16:26:53 UTC

git commit: fix payload parsing

Repository: incubator-usergrid
Updated Branches:
  refs/heads/two-dot-o-grindr 807583ddd -> 15b665133


fix payload parsing


Project: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/commit/15b66513
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/15b66513
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/15b66513

Branch: refs/heads/two-dot-o-grindr
Commit: 15b66513337b389a1cb228e68f9bad77da3898ca
Parents: 807583d
Author: Shawn Feldman <sf...@apache.org>
Authored: Tue Sep 23 08:26:30 2014 -0600
Committer: Shawn Feldman <sf...@apache.org>
Committed: Tue Sep 23 08:26:30 2014 -0600

----------------------------------------------------------------------
 .../usergrid/persistence/entities/Receipt.java  | 20 +++++++++++++++++++-
 .../notifications/ApplicationQueueManager.java  |  2 +-
 2 files changed, 20 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/15b66513/stack/core/src/main/java/org/apache/usergrid/persistence/entities/Receipt.java
----------------------------------------------------------------------
diff --git a/stack/core/src/main/java/org/apache/usergrid/persistence/entities/Receipt.java b/stack/core/src/main/java/org/apache/usergrid/persistence/entities/Receipt.java
index 1ffc351..1e145ac 100644
--- a/stack/core/src/main/java/org/apache/usergrid/persistence/entities/Receipt.java
+++ b/stack/core/src/main/java/org/apache/usergrid/persistence/entities/Receipt.java
@@ -20,8 +20,10 @@ import com.fasterxml.jackson.databind.annotation.JsonSerialize;
 import org.apache.usergrid.persistence.TypedEntity;
 
 import javax.xml.bind.annotation.XmlRootElement;
+import java.util.HashMap;
 import java.util.UUID;
 import org.apache.usergrid.persistence.annotations.EntityProperty;
+import org.mortbay.util.ajax.JSON;
 
 @XmlRootElement
 public class Receipt extends TypedEntity {
@@ -66,7 +68,23 @@ public class Receipt extends TypedEntity {
     public Receipt(UUID notificationUUID, String notifierId, Object payload,UUID deviceId) {
         this.notificationUUID = notificationUUID;
         this.notifierId = notifierId;
-        this.payload = payload;
+        HashMap receiptPayload;
+        if(! (payload instanceof HashMap) ){
+            if(payload instanceof String){
+                try {
+                    receiptPayload = (HashMap) JSON.parse((String) payload);
+                }catch (Exception e){
+                    receiptPayload = new HashMap<>();
+                    receiptPayload.put("payload", payload);
+                }
+            }else {
+                receiptPayload = new HashMap<>();
+                receiptPayload.put("payload", payload);
+            }
+        }else{
+            receiptPayload = (HashMap)payload;
+        }
+        this.payload = receiptPayload;
         this.setDeviceId(deviceId);
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-usergrid/blob/15b66513/stack/services/src/main/java/org/apache/usergrid/services/notifications/ApplicationQueueManager.java
----------------------------------------------------------------------
diff --git a/stack/services/src/main/java/org/apache/usergrid/services/notifications/ApplicationQueueManager.java b/stack/services/src/main/java/org/apache/usergrid/services/notifications/ApplicationQueueManager.java
index 37f53c4..2bfa332 100644
--- a/stack/services/src/main/java/org/apache/usergrid/services/notifications/ApplicationQueueManager.java
+++ b/stack/services/src/main/java/org/apache/usergrid/services/notifications/ApplicationQueueManager.java
@@ -354,7 +354,7 @@ public class ApplicationQueueManager implements QueueManager {
                     }
 
                 } catch (Exception e) {
-                    LOG.error("Failure unknown",e);
+                    LOG.error("Failure while sending",e);
                 }
                 return message;
             }