Author: hsaputra
Date: Thu Apr 19 00:38:34 2012
New Revision: 1327756
URL: http://svn.apache.org/viewvc?rev=1327756&view=rev
Log:
SHINDIG-1677 Fix the REST response for collection to wrap it with list field |
CR: https://reviews.apache.org/r/4760
Modified:
shindig/trunk/java/common/src/main/java/org/apache/shindig/common/util/FutureUtil.java
shindig/trunk/java/common/src/main/java/org/apache/shindig/protocol/JsonRpcServlet.java
shindig/trunk/java/common/src/main/java/org/apache/shindig/protocol/RestfulCollection.java
shindig/trunk/java/common/src/main/java/org/apache/shindig/protocol/conversion/xstream/RestfullCollectionConverter.java
shindig/trunk/java/common/src/test/java/org/apache/shindig/protocol/RestfulCollectionTest.java
shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/core/util/atom/AtomFeed.java
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonActivityTest.java
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonPeopleTest.java
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulXmlActivityTest.java
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulXmlPeopleTest.java
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryJsonDelete.json
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryJsonGroup.json
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryJsonIds.json
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryXmlIds.xml
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/sample/spi/JsonDbOpensocialServiceTest.java
shindig/trunk/java/social-api/src/test/resources/org/apache/shindig/social/opensocial/util/opensocial.xsd
Modified:
shindig/trunk/java/common/src/main/java/org/apache/shindig/common/util/FutureUtil.java
URL:
http://svn.apache.org/viewvc/shindig/trunk/java/common/src/main/java/org/apache/shindig/common/util/FutureUtil.java?rev=1327756&r1=1327755&r2=1327756&view=diff
==============================================================================
---
shindig/trunk/java/common/src/main/java/org/apache/shindig/common/util/FutureUtil.java
(original)
+++
shindig/trunk/java/common/src/main/java/org/apache/shindig/common/util/FutureUtil.java
Thu Apr 19 00:38:34 2012
@@ -60,7 +60,7 @@ public final class FutureUtil {
private T getFirstFromCollection(RestfulCollection<T> collection) {
if (collection.getTotalResults() > 0) {
- return collection.getEntry().get(0);
+ return collection.getList().get(0);
}
return null;
Modified:
shindig/trunk/java/common/src/main/java/org/apache/shindig/protocol/JsonRpcServlet.java
URL:
http://svn.apache.org/viewvc/shindig/trunk/java/common/src/main/java/org/apache/shindig/protocol/JsonRpcServlet.java?rev=1327756&r1=1327755&r2=1327756&view=diff
==============================================================================
---
shindig/trunk/java/common/src/main/java/org/apache/shindig/protocol/JsonRpcServlet.java
(original)
+++
shindig/trunk/java/common/src/main/java/org/apache/shindig/protocol/JsonRpcServlet.java
Thu Apr 19 00:38:34 2012
@@ -275,7 +275,7 @@ public class JsonRpcServlet extends ApiS
Map<String, Object> map = Maps.newHashMap();
RestfulCollection<?> collection = (RestfulCollection<?>) response;
// Return sublist info
- if (collection.getTotalResults() != collection.getEntry().size()) {
+ if (collection.getTotalResults() != collection.getList().size()) {
map.put("startIndex", collection.getStartIndex());
map.put("itemsPerPage", collection.getItemsPerPage());
}
@@ -291,7 +291,7 @@ public class JsonRpcServlet extends ApiS
if (!collection.isSorted())
map.put("sorted", collection.isUpdatedSince());
- map.put("list", collection.getEntry());
+ map.put("list", collection.getList());
addResult(result, map);
} else {
addResult(result, response);
Modified:
shindig/trunk/java/common/src/main/java/org/apache/shindig/protocol/RestfulCollection.java
URL:
http://svn.apache.org/viewvc/shindig/trunk/java/common/src/main/java/org/apache/shindig/protocol/RestfulCollection.java?rev=1327756&r1=1327755&r2=1327756&view=diff
==============================================================================
---
shindig/trunk/java/common/src/main/java/org/apache/shindig/protocol/RestfulCollection.java
(original)
+++
shindig/trunk/java/common/src/main/java/org/apache/shindig/protocol/RestfulCollection.java
Thu Apr 19 00:38:34 2012
@@ -23,7 +23,7 @@ import java.util.List;
* Data structure representing a Rest response.
*/
public class RestfulCollection<T> {
- private List<T> entry;
+ private List<T> list;
private int startIndex;
private int totalResults;
private int itemsPerPage;
@@ -49,15 +49,15 @@ public class RestfulCollection<T> {
/**
* Create a paginated collection response.
*
- * @param entry paginated entries
+ * @param list paginated entries
* @param startIndex the index corresponding to the first element of {entry}
* @param totalResults the total size of the resultset
* @param itemsPerPage the size of the pagination, generally set to the
user-specified count parameter. Clamped to the totalResults size automatically
*
* @since 1.1-BETA4
*/
- public RestfulCollection(List<T> entry, int startIndex, int totalResults,
int itemsPerPage) {
- this.entry = entry;
+ public RestfulCollection(List<T> list, int startIndex, int totalResults, int
itemsPerPage) {
+ this.list = list;
this.startIndex = startIndex;
this.totalResults = totalResults;
this.itemsPerPage = Math.min(itemsPerPage, totalResults);
@@ -71,12 +71,12 @@ public class RestfulCollection<T> {
this(entry, startIndex, totalResults, entry.size());
}
- public List<T> getEntry() {
- return entry;
+ public List<T> getList() {
+ return list;
}
- public void setEntry(List<T> entry) {
- this.entry = entry;
+ public void setList(List<T> list) {
+ this.list = list;
}
public int getStartIndex() {
Modified:
shindig/trunk/java/common/src/main/java/org/apache/shindig/protocol/conversion/xstream/RestfullCollectionConverter.java
URL:
http://svn.apache.org/viewvc/shindig/trunk/java/common/src/main/java/org/apache/shindig/protocol/conversion/xstream/RestfullCollectionConverter.java?rev=1327756&r1=1327755&r2=1327756&view=diff
==============================================================================
---
shindig/trunk/java/common/src/main/java/org/apache/shindig/protocol/conversion/xstream/RestfullCollectionConverter.java
(original)
+++
shindig/trunk/java/common/src/main/java/org/apache/shindig/protocol/conversion/xstream/RestfullCollectionConverter.java
Thu Apr 19 00:38:34 2012
@@ -80,11 +80,13 @@ public class RestfullCollectionConverter
writer.endNode();
// TODO: resolve if entry is the container or the name of the object.
- for (Object o : collection.getEntry()) {
+ writer.startNode("list");
+ for (Object o : collection.getList()) {
writer.startNode("entry");
writeItem(o, context, writer);
writer.endNode();
}
+ writer.endNode();
}
/**
Modified:
shindig/trunk/java/common/src/test/java/org/apache/shindig/protocol/RestfulCollectionTest.java
URL:
http://svn.apache.org/viewvc/shindig/trunk/java/common/src/test/java/org/apache/shindig/protocol/RestfulCollectionTest.java?rev=1327756&r1=1327755&r2=1327756&view=diff
==============================================================================
---
shindig/trunk/java/common/src/test/java/org/apache/shindig/protocol/RestfulCollectionTest.java
(original)
+++
shindig/trunk/java/common/src/test/java/org/apache/shindig/protocol/RestfulCollectionTest.java
Thu Apr 19 00:38:34 2012
@@ -30,15 +30,15 @@ public class RestfulCollectionTest exten
RestfulCollection<String> collection
= new RestfulCollection<String>(Lists.<String>newArrayList());
- List<String> entry = Lists.newArrayList("banana");
+ List<String> entryList = Lists.newArrayList("banana");
int startIndex = 5;
int totalResults = 8675309;
- collection.setEntry(entry);
+ collection.setList(entryList);
collection.setStartIndex(startIndex);
collection.setTotalResults(totalResults);
- assertEquals(entry, collection.getEntry());
+ assertEquals(entryList, collection.getList());
assertEquals(startIndex, collection.getStartIndex());
assertEquals(totalResults, collection.getTotalResults());
}
@@ -48,7 +48,7 @@ public class RestfulCollectionTest exten
List<String> entry = Lists.newArrayList("banana", "who");
RestfulCollection<String> collection = new
RestfulCollection<String>(entry);
- assertEquals(entry, collection.getEntry());
+ assertEquals(entry, collection.getList());
assertEquals(0, collection.getStartIndex());
assertEquals(entry.size(), collection.getTotalResults());
assertEquals(entry.size(), collection.getItemsPerPage());
@@ -58,7 +58,7 @@ public class RestfulCollectionTest exten
int resultsPerPage = 1;
collection = new RestfulCollection<String>(entry, startIndex,
totalResults, resultsPerPage);
- assertEquals(entry, collection.getEntry());
+ assertEquals(entry, collection.getList());
assertEquals(startIndex, collection.getStartIndex());
assertEquals(totalResults, collection.getTotalResults());
assertEquals(resultsPerPage, collection.getItemsPerPage());
Modified:
shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/core/util/atom/AtomFeed.java
URL:
http://svn.apache.org/viewvc/shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/core/util/atom/AtomFeed.java?rev=1327756&r1=1327755&r2=1327756&view=diff
==============================================================================
---
shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/core/util/atom/AtomFeed.java
(original)
+++
shindig/trunk/java/social-api/src/main/java/org/apache/shindig/social/core/util/atom/AtomFeed.java
Thu Apr 19 00:38:34 2012
@@ -65,7 +65,7 @@ public class AtomFeed {
} else if (obj instanceof RestfulCollection<?>) {
RestfulCollection<?> r = (RestfulCollection<?>) obj;
entry = Lists.newArrayList();
- List<?> entryList = r.getEntry();
+ List<?> entryList = r.getList();
for (Object o : entryList) {
entry.add(new AtomEntry(o));
}
Modified:
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonActivityTest.java
URL:
http://svn.apache.org/viewvc/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonActivityTest.java?rev=1327756&r1=1327755&r2=1327756&view=diff
==============================================================================
---
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonActivityTest.java
(original)
+++
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonActivityTest.java
Thu Apr 19 00:38:34 2012
@@ -79,7 +79,7 @@ public class RestfulJsonActivityTest ext
assertEquals(1, result.getInt("totalResults"));
assertEquals(0, result.getInt("startIndex"));
- assertActivitiesEqual(johnsActivity,
result.getJSONArray("entry").getJSONObject(0));
+ assertActivitiesEqual(johnsActivity,
result.getJSONArray("list").getJSONObject(0));
}
/**
@@ -129,7 +129,7 @@ public class RestfulJsonActivityTest ext
assertEquals(2, result.getInt("totalResults"));
assertEquals(0, result.getInt("startIndex"));
- JSONArray activities = result.getJSONArray("entry");
+ JSONArray activities = result.getJSONArray("list");
int newActivityIndex = 0;
if (activities.getJSONObject(0).has("id")) {
newActivityIndex = 1;
Modified:
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonPeopleTest.java
URL:
http://svn.apache.org/viewvc/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonPeopleTest.java?rev=1327756&r1=1327755&r2=1327756&view=diff
==============================================================================
---
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonPeopleTest.java
(original)
+++
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulJsonPeopleTest.java
Thu Apr 19 00:38:34 2012
@@ -464,7 +464,7 @@ public class RestfulJsonPeopleTest exten
assertEquals(3, result.getInt("totalResults"));
assertEquals(0, result.getInt("startIndex"));
- JSONArray people = result.getJSONArray("entry");
+ JSONArray people = result.getJSONArray("list");
// The users should be in alphabetical order
assertPerson(people.getJSONObject(0), "george.doe", "George Doe");
@@ -488,7 +488,7 @@ public class RestfulJsonPeopleTest exten
assertEquals(3, result.getInt("totalResults"));
assertEquals(0, result.getInt("startIndex"));
- JSONArray people = result.getJSONArray("entry");
+ JSONArray people = result.getJSONArray("list");
assertPerson(people.getJSONObject(0), "george.doe", "George Doe");
// Get the second page
@@ -500,7 +500,7 @@ public class RestfulJsonPeopleTest exten
assertEquals(3, result.getInt("totalResults"));
assertEquals(1, result.getInt("startIndex"));
- people = result.getJSONArray("entry");
+ people = result.getJSONArray("list");
assertPerson(people.getJSONObject(0), "jane.doe", "Jane Doe");
}
Modified:
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulXmlActivityTest.java
URL:
http://svn.apache.org/viewvc/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulXmlActivityTest.java?rev=1327756&r1=1327755&r2=1327756&view=diff
==============================================================================
---
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulXmlActivityTest.java
(original)
+++
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulXmlActivityTest.java
Thu Apr 19 00:38:34 2012
@@ -116,7 +116,7 @@ public class RestfulXmlActivityTest exte
* if test encounters an error
*/
@Test
- public void testGetActivitiesJson() throws Exception {
+ public void testGetActivitiesXml() throws Exception {
String resp = getResponse("/activities/john.doe/@self", "GET", "xml",
"application/xml");
XSDValidator.validateOpenSocial(resp);
@@ -124,7 +124,7 @@ public class RestfulXmlActivityTest exte
assertEquals("0", xp.evaluate("/:response/:startIndex",
XMLUnit.buildTestDocument(resp)));
assertEquals("1", xp.evaluate("/:response/:totalResults",
XMLUnit.buildTestDocument(resp)));
- NodeList nl = xp.getMatchingNodes("/:response/:entry/:activity",
XMLUnit.buildTestDocument(resp));
+ NodeList nl = xp.getMatchingNodes("/:response/:list/:entry/:activity",
XMLUnit.buildTestDocument(resp));
assertEquals(1, nl.getLength());
@@ -175,7 +175,7 @@ public class RestfulXmlActivityTest exte
* if test encounters an error
*/
@Test
- public void testGetFriendsActivitiesJson() throws Exception {
+ public void testGetFriendsActivitiesXml() throws Exception {
String resp = getResponse("/activities/john.doe/@friends", "GET", "xml",
"application/xml");
@@ -183,7 +183,7 @@ public class RestfulXmlActivityTest exte
assertEquals("0", xp.evaluate("/:response/:startIndex",
XMLUnit.buildTestDocument(resp)));
assertEquals("2", xp.evaluate("/:response/:totalResults",
XMLUnit.buildTestDocument(resp)));
- NodeList nl = xp.getMatchingNodes("/:response/:entry",
XMLUnit.buildTestDocument(resp));
+ NodeList nl = xp.getMatchingNodes("/:response/:list/:entry",
XMLUnit.buildTestDocument(resp));
assertEquals(2, nl.getLength());
}
@@ -212,7 +212,7 @@ public class RestfulXmlActivityTest exte
assertEquals("0", xp.evaluate("/:response/:startIndex",
XMLUnit.buildTestDocument(resp)));
assertEquals("2", xp.evaluate("/:response/:totalResults",
XMLUnit.buildTestDocument(resp)));
- NodeList nl = xp.getMatchingNodes("/:response/:entry/:activity",
XMLUnit.buildTestDocument(resp));
+ NodeList nl = xp.getMatchingNodes("/:response/:list/:entry/:activity",
XMLUnit.buildTestDocument(resp));
assertEquals(2, nl.getLength());
Modified:
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulXmlPeopleTest.java
URL:
http://svn.apache.org/viewvc/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulXmlPeopleTest.java?rev=1327756&r1=1327755&r2=1327756&view=diff
==============================================================================
---
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulXmlPeopleTest.java
(original)
+++
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/RestfulXmlPeopleTest.java
Thu Apr 19 00:38:34 2012
@@ -513,12 +513,15 @@ public class RestfulXmlPeopleTest extend
assertEquals("0", result.get("startIndex").get(0));
// The users should be in alphabetical order
- Map<String, List<Node>> entryOne =
childNodesToNodeMap(resultNodes.get("entry").get(0));
+ List<Node> listNodes = resultNodes.get("list");
+ Map<String, List<Node>> listNodesChildMap =
childNodesToNodeMap(listNodes.get(0));
+ List<Node> entries = listNodesChildMap.get("entry");
+ Map<String, List<Node>> entryOne = childNodesToNodeMap(entries.get(0));
assertPerson(childNodesToNodeMap(entryOne.get("person").get(0)),
"george.doe", "George Doe");
- Map<String, List<Node>> entryTwo =
childNodesToNodeMap(resultNodes.get("entry").get(1));
+ Map<String, List<Node>> entryTwo = childNodesToNodeMap(entries.get(1));
assertPerson(childNodesToNodeMap(entryTwo.get("person").get(0)),
"jane.doe", "Jane Doe");
}
@@ -548,7 +551,11 @@ public class RestfulXmlPeopleTest extend
assertEquals("3", result.get("totalResults").get(0));
assertEquals("0", result.get("startIndex").get(0));
- Map<String, List<Node>> entryOne =
childNodesToNodeMap(resultNodes.get("entry").get(0));
+ List<Node> listNodes = resultNodes.get("list");
+ Map<String, List<Node>> listNodesChildMap =
childNodesToNodeMap(listNodes.get(0));
+ List<Node> entries = listNodesChildMap.get("entry");
+
+ Map<String, List<Node>> entryOne = childNodesToNodeMap(entries.get(0));
assertPerson(childNodesToNodeMap(entryOne.get("person").get(0)),
"george.doe", "George Doe");
@@ -569,7 +576,11 @@ public class RestfulXmlPeopleTest extend
assertEquals("3", result.get("totalResults").get(0));
assertEquals("1", result.get("startIndex").get(0));
- Map<String, List<Node>> entryTwo =
childNodesToNodeMap(resultNodes.get("entry").get(0));
+ listNodes = resultNodes.get("list");
+ listNodesChildMap = childNodesToNodeMap(listNodes.get(0));
+ entries = listNodesChildMap.get("entry");
+
+ Map<String, List<Node>> entryTwo = childNodesToNodeMap(entries.get(0));
assertPerson(childNodesToNodeMap(entryTwo.get("person").get(0)),
"jane.doe", "Jane Doe");
}
Modified:
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryJsonDelete.json
URL:
http://svn.apache.org/viewvc/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryJsonDelete.json?rev=1327756&r1=1327755&r2=1327756&view=diff
==============================================================================
---
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryJsonDelete.json
(original)
+++
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryJsonDelete.json
Thu Apr 19 00:38:34 2012
@@ -1,8 +1,8 @@
{
"startIndex":0,
"totalResults":1,
- "entry":[
-{
+ "list":[
+ {
"id": "activity2",
"published": "2011-03-10T15:04:55Z",
"generator": {
Modified:
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryJsonGroup.json
URL:
http://svn.apache.org/viewvc/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryJsonGroup.json?rev=1327756&r1=1327755&r2=1327756&view=diff
==============================================================================
---
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryJsonGroup.json
(original)
+++
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryJsonGroup.json
Thu Apr 19 00:38:34 2012
@@ -1,7 +1,7 @@
{
"startIndex":0,
"totalResults":2,
- "entry":[
+ "list":[
{
"id": "activity1",
"title": "John shared new photos with you",
Modified:
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryJsonIds.json
URL:
http://svn.apache.org/viewvc/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryJsonIds.json?rev=1327756&r1=1327755&r2=1327756&view=diff
==============================================================================
---
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryJsonIds.json
(original)
+++
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryJsonIds.json
Thu Apr 19 00:38:34 2012
@@ -1,33 +1,33 @@
{
"startIndex":0,
"totalResults":2,
- "entry":[
+ "list":[
{
- "id": "activity1",
- "title": "John shared new photos with you",
- "published": "2011-02-10T15:04:55Z",
- "actor": {
- "url": "http://example.org/john",
- "objectType" : "person",
- "id": "john.doe",
- "image": {
- "url": "http://example.org/john/image",
- "width": 250,
- "height": 250
- },
- "displayName": "John Doe"
- },
- "verb": "post",
- "object" : {
- "url": "http://example.org/blog/2011/02/entry",
- "id": "object1"
- },
- "target" : {
- "url": "http://example.org/blog/",
- "objectType": "blog",
- "id": "target1",
- "displayName": "John's Blog"
- },
+ "id": "activity1",
+ "title": "John shared new photos with you",
+ "published": "2011-02-10T15:04:55Z",
+ "actor": {
+ "url": "http://example.org/john",
+ "objectType" : "person",
+ "id": "john.doe",
+ "image": {
+ "url": "http://example.org/john/image",
+ "width": 250,
+ "height": 250
+ },
+ "displayName": "John Doe"
+ },
+ "verb": "post",
+ "object" : {
+ "url": "http://example.org/blog/2011/02/entry",
+ "id": "object1"
+ },
+ "target" : {
+ "url": "http://example.org/blog/",
+ "objectType": "blog",
+ "id": "target1",
+ "displayName": "John's Blog"
+ },
"openSocial":{
"embed" : {
"gadget" :
"http://localhost:8080/samplecontainer/examples/embeddedexperiences/PhotoList.xml",
@@ -46,9 +46,8 @@
}
}
}
-
- }, {
- "id": "activity2",
+ }, {
+ "id": "activity2",
"published": "2011-03-10T15:04:55Z",
"generator": {
"url": "http://example.org/activities-app"
Modified:
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryXmlIds.xml
URL:
http://svn.apache.org/viewvc/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryXmlIds.xml?rev=1327756&r1=1327755&r2=1327756&view=diff
==============================================================================
---
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryXmlIds.xml
(original)
+++
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/dataservice/integration/fixtures/ActivityEntryXmlIds.xml
Thu Apr 19 00:38:34 2012
@@ -5,141 +5,142 @@
<filtered>true</filtered>
<sorted>true</sorted>
<updatedSince>true</updatedSince>
-
- <entry>
- <activityEntry>
- <actor>
- <displayName>John Doe</displayName>
- <id>john.doe</id>
- <image>
- <height>250</height>
-
- <url>http://example.org/john/image</url>
- <width>250</width>
- </image>
- <objectType>person</objectType>
- <url>http://example.org/john</url>
- </actor>
- <id>activity1</id>
- <title>John shared new photos with you</title>
- <object>
- <id>object1</id>
- <url>http://example.org/blog/2011/02/entry</url>
- </object>
- <published>2011-02-10T15:04:55Z</published>
- <target>
- <displayName>John's Blog</displayName>
-
- <id>target1</id>
- <objectType>blog</objectType>
- <url>http://example.org/blog/</url>
- </target>
- <verb>post</verb>
- <openSocial>
- <embed>
- <context>
- <albumName>Germany 2009</albumName>
-
<eeGadget>http://localhost:8080/samplecontainer/examples/embeddedexperiences/AlbumViewer.xml</eeGadget>
- <photoUrls>
-
<java.lang.String>http://farm4.static.flickr.com/3495/3925132517_5959dac775.jpg</java.lang.String>
-
<java.lang.String>http://farm4.static.flickr.com/3629/3394799776_47676abb46.jpg</java.lang.String>
-
<java.lang.String>http://farm5.static.flickr.com/4009/4413640211_715d924d9b.jpg</java.lang.String>
-
<java.lang.String>http://farm3.static.flickr.com/2340/3528537244_d2fb037aba.jpg</java.lang.String>
-
<java.lang.String>http://farm1.static.flickr.com/36/98407782_9c4c5866d1.jpg</java.lang.String>
-
<java.lang.String>http://farm1.static.flickr.com/48/180544479_bb0d0f6559.jpg</java.lang.String>
-
<java.lang.String>http://farm3.static.flickr.com/2668/3858018351_1e7b73c0b7.jpg</java.lang.String>
- </photoUrls>
- </context>
-
<gadget>http://localhost:8080/samplecontainer/examples/embeddedexperiences/PhotoList.xml</gadget>
- </embed>
- </openSocial>
- </activityEntry>
- </entry>
-
- <entry>
- <activityEntry>
- <actor>
- <displayName>John Doe</displayName>
- <id>john.doe</id>
- <image>
- <height>250</height>
-
- <url>http://example.org/john/image</url>
- <width>250</width>
- </image>
- <objectType>person</objectType>
- <url>http://example.org/john</url>
- </actor>
- <generator>
-
- <url>http://example.org/activities-app</url>
- </generator>
- <id>activity2</id>
- <object>
- <attachments>
+ <list>
+ <entry>
+ <activityEntry>
+ <actor>
+ <displayName>John Doe</displayName>
+ <id>john.doe</id>
+ <image>
+ <height>250</height>
+
+ <url>http://example.org/john/image</url>
+ <width>250</width>
+ </image>
+ <objectType>person</objectType>
+ <url>http://example.org/john</url>
+ </actor>
+ <id>activity1</id>
+ <title>John shared new photos with you</title>
<object>
- <id>attachment1</id>
-
- <objectType>attachment</objectType>
+ <id>object1</id>
+ <url>http://example.org/blog/2011/02/entry</url>
</object>
+ <published>2011-02-10T15:04:55Z</published>
+ <target>
+ <displayName>John's Blog</displayName>
+
+ <id>target1</id>
+ <objectType>blog</objectType>
+ <url>http://example.org/blog/</url>
+ </target>
+ <verb>post</verb>
+ <openSocial>
+ <embed>
+ <context>
+ <albumName>Germany 2009</albumName>
+
<eeGadget>http://localhost:8080/samplecontainer/examples/embeddedexperiences/AlbumViewer.xml</eeGadget>
+ <photoUrls>
+
<java.lang.String>http://farm4.static.flickr.com/3495/3925132517_5959dac775.jpg</java.lang.String>
+
<java.lang.String>http://farm4.static.flickr.com/3629/3394799776_47676abb46.jpg</java.lang.String>
+
<java.lang.String>http://farm5.static.flickr.com/4009/4413640211_715d924d9b.jpg</java.lang.String>
+
<java.lang.String>http://farm3.static.flickr.com/2340/3528537244_d2fb037aba.jpg</java.lang.String>
+
<java.lang.String>http://farm1.static.flickr.com/36/98407782_9c4c5866d1.jpg</java.lang.String>
+
<java.lang.String>http://farm1.static.flickr.com/48/180544479_bb0d0f6559.jpg</java.lang.String>
+
<java.lang.String>http://farm3.static.flickr.com/2668/3858018351_1e7b73c0b7.jpg</java.lang.String>
+ </photoUrls>
+ </context>
+
<gadget>http://localhost:8080/samplecontainer/examples/embeddedexperiences/PhotoList.xml</gadget>
+ </embed>
+ </openSocial>
+ </activityEntry>
+ </entry>
+
+ <entry>
+ <activityEntry>
+ <actor>
+ <displayName>John Doe</displayName>
+ <id>john.doe</id>
+ <image>
+ <height>250</height>
+
+ <url>http://example.org/john/image</url>
+ <width>250</width>
+ </image>
+ <objectType>person</objectType>
+ <url>http://example.org/john</url>
+ </actor>
+ <generator>
+
+ <url>http://example.org/activities-app</url>
+ </generator>
+ <id>activity2</id>
<object>
- <id>attachment2</id>
- <objectType>attachment</objectType>
- </object>
- </attachments>
+ <attachments>
+ <object>
+ <id>attachment1</id>
+
+ <objectType>attachment</objectType>
+ </object>
+ <object>
+ <id>attachment2</id>
+ <objectType>attachment</objectType>
+ </object>
+ </attachments>
+
+ <downstreamDuplicate>downstream1</downstreamDuplicate>
+ <downstreamDuplicate>downstream2</downstreamDuplicate>
+ <id>object2</id>
+ <summary>Photo posted</summary>
+ <image>
+ <height>250</height>
+ <url>http://example.org/album/my_fluffy_cat_thumb.jpg</url>
+
+ <width>250</width>
+ </image>
+ <objectType>photo</objectType>
+ <upstreamDuplicate>upstream1</upstreamDuplicate>
+ <upstreamDuplicate>upstream2</upstreamDuplicate>
+ <url>http://example.org/album/my_fluffy_cat.jpg</url>
- <downstreamDuplicate>downstream1</downstreamDuplicate>
- <downstreamDuplicate>downstream2</downstreamDuplicate>
- <id>object2</id>
- <summary>Photo posted</summary>
- <image>
- <height>250</height>
- <url>http://example.org/album/my_fluffy_cat_thumb.jpg</url>
-
- <width>250</width>
- </image>
- <objectType>photo</objectType>
- <upstreamDuplicate>upstream1</upstreamDuplicate>
- <upstreamDuplicate>upstream2</upstreamDuplicate>
- <url>http://example.org/album/my_fluffy_cat.jpg</url>
-
- </object>
- <provider>
- <url>http://example.org/activity-stream</url>
- </provider>
- <published>2011-03-10T15:04:55Z</published>
- <target>
- <displayName>John's Photo Album</displayName>
-
- <id>target2</id>
- <image>
- <height>250</height>
- <url>http://example.org/album/thumbnail.jpg</url>
- <width>250</width>
- </image>
- <objectType>photo-album</objectType>
-
- <url>http://example.org/album/</url>
- </target>
- <title>John posted a new photo album.</title>
- <verb>post</verb>
- <openSocial>
- <embed>
- <context>
- <albumName>Germany 2009</albumName>
- <photoUrls>
-
<java.lang.String>http://farm4.static.flickr.com/3495/3925132517_5959dac775_t.jpg</java.lang.String>
-
<java.lang.String>http://farm4.static.flickr.com/3629/3394799776_47676abb46_t.jpg</java.lang.String>
-
<java.lang.String>http://farm5.static.flickr.com/4009/4413640211_715d924d9b_t.jpg</java.lang.String>
-
<java.lang.String>http://farm3.static.flickr.com/2340/3528537244_d2fb037aba_t.jpg</java.lang.String>
-
<java.lang.String>http://farm1.static.flickr.com/36/98407782_9c4c5866d1_t.jpg</java.lang.String>
-
<java.lang.String>http://farm1.static.flickr.com/48/180544479_bb0d0f6559_t.jpg</java.lang.String>
-
<java.lang.String>http://farm3.static.flickr.com/2668/3858018351_1e7b73c0b7_t.jpg</java.lang.String>
- </photoUrls>
- </context>
-
<gadget>http://localhost:8080/samplecontainer/examples/embeddedexperiences/AlbumViewer.xml</gadget>
- </embed>
- </openSocial>
- </activityEntry>
- </entry>
+ </object>
+ <provider>
+ <url>http://example.org/activity-stream</url>
+ </provider>
+ <published>2011-03-10T15:04:55Z</published>
+ <target>
+ <displayName>John's Photo Album</displayName>
+
+ <id>target2</id>
+ <image>
+ <height>250</height>
+ <url>http://example.org/album/thumbnail.jpg</url>
+ <width>250</width>
+ </image>
+ <objectType>photo-album</objectType>
+
+ <url>http://example.org/album/</url>
+ </target>
+ <title>John posted a new photo album.</title>
+ <verb>post</verb>
+ <openSocial>
+ <embed>
+ <context>
+ <albumName>Germany 2009</albumName>
+ <photoUrls>
+
<java.lang.String>http://farm4.static.flickr.com/3495/3925132517_5959dac775_t.jpg</java.lang.String>
+
<java.lang.String>http://farm4.static.flickr.com/3629/3394799776_47676abb46_t.jpg</java.lang.String>
+
<java.lang.String>http://farm5.static.flickr.com/4009/4413640211_715d924d9b_t.jpg</java.lang.String>
+
<java.lang.String>http://farm3.static.flickr.com/2340/3528537244_d2fb037aba_t.jpg</java.lang.String>
+
<java.lang.String>http://farm1.static.flickr.com/36/98407782_9c4c5866d1_t.jpg</java.lang.String>
+
<java.lang.String>http://farm1.static.flickr.com/48/180544479_bb0d0f6559_t.jpg</java.lang.String>
+
<java.lang.String>http://farm3.static.flickr.com/2668/3858018351_1e7b73c0b7_t.jpg</java.lang.String>
+ </photoUrls>
+ </context>
+
<gadget>http://localhost:8080/samplecontainer/examples/embeddedexperiences/AlbumViewer.xml</gadget>
+ </embed>
+ </openSocial>
+ </activityEntry>
+ </entry>
+ </list>
</response>
Modified:
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/sample/spi/JsonDbOpensocialServiceTest.java
URL:
http://svn.apache.org/viewvc/shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/sample/spi/JsonDbOpensocialServiceTest.java?rev=1327756&r1=1327755&r2=1327756&view=diff
==============================================================================
---
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/sample/spi/JsonDbOpensocialServiceTest.java
(original)
+++
shindig/trunk/java/social-api/src/test/java/org/apache/shindig/social/sample/spi/JsonDbOpensocialServiceTest.java
Thu Apr 19 00:38:34 2012
@@ -42,7 +42,6 @@ import org.junit.Before;
import org.junit.Test;
import org.json.JSONArray;
-import org.json.JSONException;
import org.json.JSONObject;
import com.google.common.collect.ImmutableMap;
@@ -143,8 +142,8 @@ public class JsonDbOpensocialServiceTest
assertNotNull(responseItem);
assertEquals(4, responseItem.getTotalResults());
// Test a couple of users
- assertEquals("john.doe", responseItem.getEntry().get(0).getId());
- assertEquals("jane.doe", responseItem.getEntry().get(1).getId());
+ assertEquals("john.doe", responseItem.getList().get(0).getId());
+ assertEquals("jane.doe", responseItem.getList().get(1).getId());
}
@Test
@@ -164,8 +163,8 @@ public class JsonDbOpensocialServiceTest
assertNotNull(responseItem);
assertEquals(4, responseItem.getTotalResults());
// Test a couple of users
- assertEquals("john.doe", responseItem.getEntry().get(0).getId());
- assertEquals("jane.doe", responseItem.getEntry().get(1).getId());
+ assertEquals("john.doe", responseItem.getList().get(0).getId());
+ assertEquals("jane.doe", responseItem.getList().get(1).getId());
}
@Test
Modified:
shindig/trunk/java/social-api/src/test/resources/org/apache/shindig/social/opensocial/util/opensocial.xsd
URL:
http://svn.apache.org/viewvc/shindig/trunk/java/social-api/src/test/resources/org/apache/shindig/social/opensocial/util/opensocial.xsd?rev=1327756&r1=1327755&r2=1327756&view=diff
==============================================================================
---
shindig/trunk/java/social-api/src/test/resources/org/apache/shindig/social/opensocial/util/opensocial.xsd
(original)
+++
shindig/trunk/java/social-api/src/test/resources/org/apache/shindig/social/opensocial/util/opensocial.xsd
Thu Apr 19 00:38:34 2012
@@ -44,8 +44,8 @@
</xs:choice>
</xs:complexType>
- <!-- update for OpenSocial 1.1 XSD -->
- <!-- (see
http://opensocial-resources.googlecode.com/svn/spec/1.1/Core-API-Server.xml#XML_format_XSD)
-->
+ <!-- update for OpenSocial latest XSD -->
+ <!-- (see
http://opensocial-resources.googlecode.com/svn/spec/trunk/Core-API-Server.xml#XML_format_XSD)
-->
<xs:group name="collection">
<xs:sequence>
<xs:element minOccurs="0" name="itemsPerPage" type="xs:int"/>
@@ -54,7 +54,7 @@
<xs:element minOccurs="0" name="filtered" type="xs:boolean"/>
<xs:element minOccurs="0" name="sorted" type="xs:boolean"/>
<xs:element minOccurs="0" name="updatedSince" type="xs:boolean"/>
- <xs:element name="entry" type="tns:Entry" minOccurs="0"
maxOccurs="unbounded"/>
+ <xs:element name="list" type="tns:CollectionList" />
</xs:sequence>
</xs:group>
@@ -64,6 +64,12 @@
</xs:sequence>
</xs:complexType>
+ <xs:complexType name="CollectionList" >
+ <xs:sequence>
+ <xs:element name="entry" type="tns:Entry" minOccurs="0"
maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+
<xs:complexType name="Entry" >
<xs:choice>
<xs:element minOccurs="0" name="activity" type="tns:Activity" />
@@ -71,7 +77,6 @@
<xs:element minOccurs="0" name="group" type="tns:Group" />
</xs:choice>
</xs:complexType>
-
<xs:complexType name="Activity">
<xs:choice minOccurs="0" maxOccurs="unbounded">