fix for #700: get all feeds method problem with most recent feeds
git-svn-id: http://svn.research-infrastructures.eu/public/d4science/gcube/trunk/portlets/user/news-feed@80988 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
df31e460c1
commit
6f3d3d3b15
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<classpath>
|
<classpath>
|
||||||
<classpathentry kind="src" output="target/news-feed-1.1.0-SNAPSHOT/WEB-INF/classes" path="src/main/java">
|
<classpathentry kind="src" output="target/news-feed-1.1.1-SNAPSHOT/WEB-INF/classes" path="src/main/java">
|
||||||
<attributes>
|
<attributes>
|
||||||
<attribute name="optional" value="true"/>
|
<attribute name="optional" value="true"/>
|
||||||
<attribute name="maven.pomderived" value="true"/>
|
<attribute name="maven.pomderived" value="true"/>
|
||||||
|
@ -31,5 +31,5 @@
|
||||||
<attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
|
<attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
|
||||||
</attributes>
|
</attributes>
|
||||||
</classpathentry>
|
</classpathentry>
|
||||||
<classpathentry kind="output" path="target/news-feed-1.1.0-SNAPSHOT/WEB-INF/classes"/>
|
<classpathentry kind="output" path="target/news-feed-1.1.1-SNAPSHOT/WEB-INF/classes"/>
|
||||||
</classpath>
|
</classpath>
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
disabled=06target
|
||||||
|
eclipse.preferences.version=1
|
2
pom.xml
2
pom.xml
|
@ -13,7 +13,7 @@
|
||||||
<groupId>org.gcube.portlets.user</groupId>
|
<groupId>org.gcube.portlets.user</groupId>
|
||||||
<artifactId>news-feed</artifactId>
|
<artifactId>news-feed</artifactId>
|
||||||
<packaging>war</packaging>
|
<packaging>war</packaging>
|
||||||
<version>1.1.0-SNAPSHOT</version>
|
<version>1.1.1-SNAPSHOT</version>
|
||||||
|
|
||||||
<name>gCube News Feed Portlet</name>
|
<name>gCube News Feed Portlet</name>
|
||||||
<description>
|
<description>
|
||||||
|
|
|
@ -95,8 +95,8 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService
|
||||||
if (user == null) {
|
if (user == null) {
|
||||||
_log.warn("USER IS NULL setting testing user and Running OUTSIDE PORTAL");
|
_log.warn("USER IS NULL setting testing user and Running OUTSIDE PORTAL");
|
||||||
user = "test.user";
|
user = "test.user";
|
||||||
user = "massimiliano.assante";
|
// user = "massimiliano.assante";
|
||||||
SessionManager.getInstance().getASLSession(sessionID, user).setScope("/gcube/devsec/devVRE");
|
// SessionManager.getInstance().getASLSession(sessionID, user).setScope("/gcube/devsec/devVRE");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
withinPortal = true;
|
withinPortal = true;
|
||||||
|
@ -187,19 +187,6 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//User Own Feeds
|
|
||||||
ArrayList<Feed> userFeeds = (ArrayList<Feed>) store.getRecentFeedsByUser(userName, feedsNoPerCategory);
|
|
||||||
for (Feed feed : userFeeds) {
|
|
||||||
feedsMap.put(feed.getKey(), feed);
|
|
||||||
}
|
|
||||||
|
|
||||||
//UserFriends Feeds
|
|
||||||
ArrayList<String> userFriendsIds = (ArrayList<String>)store.getFriends(userName);
|
|
||||||
for (String userid : userFriendsIds) {
|
|
||||||
for (Feed feed : store.getRecentFeedsByUser(userid, feedsNoPerCategory)) {
|
|
||||||
feedsMap.put(feed.getKey(), feed);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//Portal Feeds
|
//Portal Feeds
|
||||||
ArrayList<Feed> portalFeeds = (ArrayList<Feed>) store.getAllPortalPrivacyLevelFeeds();
|
ArrayList<Feed> portalFeeds = (ArrayList<Feed>) store.getAllPortalPrivacyLevelFeeds();
|
||||||
|
@ -221,6 +208,9 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService
|
||||||
toMerge.add(feedsMap.get(key));
|
toMerge.add(feedsMap.get(key));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
//sort the feeds in reverse chronological order
|
||||||
|
Collections.sort(toMerge, Collections.reverseOrder());
|
||||||
|
|
||||||
ArrayList<Feed> toReturn = new ArrayList<Feed>();
|
ArrayList<Feed> toReturn = new ArrayList<Feed>();
|
||||||
//return only <MAX_FEEDS_NO> feeds
|
//return only <MAX_FEEDS_NO> feeds
|
||||||
if (toMerge.size() > MAX_FEEDS_NO)
|
if (toMerge.size() > MAX_FEEDS_NO)
|
||||||
|
@ -372,6 +362,7 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
|
Collections.sort(userFeeds, Collections.reverseOrder());
|
||||||
return enhanceFeeds(userFeeds, 2);
|
return enhanceFeeds(userFeeds, 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -385,6 +376,7 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
|
Collections.sort(userFeeds, Collections.reverseOrder());
|
||||||
return enhanceFeeds(userFeeds, 2);
|
return enhanceFeeds(userFeeds, 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -479,13 +471,8 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService
|
||||||
private ArrayList<EnhancedFeed> enhanceFeeds(ArrayList<Feed> toEnhance, int commentsNumberPerFeed) {
|
private ArrayList<EnhancedFeed> enhanceFeeds(ArrayList<Feed> toEnhance, int commentsNumberPerFeed) {
|
||||||
ArrayList<EnhancedFeed> toReturn = new ArrayList<EnhancedFeed>();
|
ArrayList<EnhancedFeed> toReturn = new ArrayList<EnhancedFeed>();
|
||||||
String username = getASLSession().getUsername();
|
String username = getASLSession().getUsername();
|
||||||
//sort the Feeds
|
|
||||||
Collections.sort(toEnhance, Collections.reverseOrder());
|
|
||||||
ArrayList<String> likedFeeds = (ArrayList<String>) store.getAllLikedFeedIdsByUser(getASLSession().getUsername());
|
ArrayList<String> likedFeeds = (ArrayList<String>) store.getAllLikedFeedIdsByUser(getASLSession().getUsername());
|
||||||
// System.out.println("Liked Feed for " + username);
|
|
||||||
// for (String liked : likedFeeds) {
|
|
||||||
// System.out.println(liked);
|
|
||||||
// }
|
|
||||||
|
|
||||||
for (Feed feed : toEnhance) {
|
for (Feed feed : toEnhance) {
|
||||||
feed.setDescription(replaceAmpersand(feed.getDescription()));
|
feed.setDescription(replaceAmpersand(feed.getDescription()));
|
||||||
|
|
Loading…
Reference in New Issue