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:43:24 UTC
[2/2] git commit: fix payload parsing
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/2004ec99
Tree: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/tree/2004ec99
Diff: http://git-wip-us.apache.org/repos/asf/incubator-usergrid/diff/2004ec99
Branch: refs/heads/two-dot-o
Commit: 2004ec9945159e4ceb0bca07acf93d3b482526a6
Parents: e3238ed
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:42:38 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/2004ec99/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/2004ec99/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 ee988dc..d110b95 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
@@ -353,7 +353,7 @@ public class ApplicationQueueManager implements QueueManager {
}
} catch (Exception e) {
- LOG.error("Failure unknown",e);
+ LOG.error("Failure while sending",e);
}
return message;
}