Author: [email protected]
Date: Fri Aug 26 15:57:44 2011
New Revision: 1348
Log:
[AMDATUOPENSOCIAL-107] Despite using generics, at runtime the
Map<String,String> of AppData properties could still contain non-String values
(like Integer in this case). Added a toString to fix that.
Modified:
trunk/amdatu-opensocial/opensocial-shindig/src/main/java/org/amdatu/opensocial/shindig/persistence/AppDataServiceImpl.java
trunk/amdatu-opensocial/opensocial-shindig/src/main/java/org/amdatu/opensocial/shindig/service/ShindigOpenSocialContainerImpl.java
Modified:
trunk/amdatu-opensocial/opensocial-shindig/src/main/java/org/amdatu/opensocial/shindig/persistence/AppDataServiceImpl.java
==============================================================================
---
trunk/amdatu-opensocial/opensocial-shindig/src/main/java/org/amdatu/opensocial/shindig/persistence/AppDataServiceImpl.java
(original)
+++
trunk/amdatu-opensocial/opensocial-shindig/src/main/java/org/amdatu/opensocial/shindig/persistence/AppDataServiceImpl.java
Fri Aug 26 15:57:44 2011
@@ -109,7 +109,10 @@
}
Map<String, String> currentValues = (Map<String, String>)
ConversionUtil.byteArrayToObject(currentProperties);
for (String key : values.keySet()) {
- currentValues.put(key, values.get(key));
+ // Despite the generic stuff, at runtime the posted AppData values
might still contain Integers, Doubles
+ // and other primitive types. Therefore we explicitly invoke
toString() on them.
+ Object value = values.get(key);
+ currentValues.put(key, value.toString());
}
return currentValues;
}
Modified:
trunk/amdatu-opensocial/opensocial-shindig/src/main/java/org/amdatu/opensocial/shindig/service/ShindigOpenSocialContainerImpl.java
==============================================================================
---
trunk/amdatu-opensocial/opensocial-shindig/src/main/java/org/amdatu/opensocial/shindig/service/ShindigOpenSocialContainerImpl.java
(original)
+++
trunk/amdatu-opensocial/opensocial-shindig/src/main/java/org/amdatu/opensocial/shindig/service/ShindigOpenSocialContainerImpl.java
Fri Aug 26 15:57:44 2011
@@ -236,13 +236,14 @@
// First build the userprefs with the default values
Map<String, String> userPrefMap = new HashMap<String, String>();
for (String name : defaultUserPrefs.keySet()) {
- userPrefMap.put(name,
defaultUserPrefs.get(name).getDefaultValue());
+ userPrefMap.put(name,
defaultUserPrefs.get(name).getDefaultValue().toString());
}
// Now overrule default values with user specific user preferences.
if (userPrefs != null) {
for (String name : userPrefs.keySet()) {
- userPrefMap.put(name, userPrefs.get(name));
+ Object value = userPrefs.get(name);
+ userPrefMap.put(name, value.toString());
}
}
return new UserPrefs(userPrefMap);
_______________________________________________
Amdatu-commits mailing list
[email protected]
http://lists.amdatu.org/mailman/listinfo/amdatu-commits