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
Feature/26194
Massimiliano Assante 11 years ago
parent df31e460c1
commit 6f3d3d3b15

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<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>
<attribute name="optional" value="true"/>
<attribute name="maven.pomderived" value="true"/>
@ -31,5 +31,5 @@
<attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
</attributes>
</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>

@ -0,0 +1,2 @@
disabled=06target
eclipse.preferences.version=1

@ -13,7 +13,7 @@
<groupId>org.gcube.portlets.user</groupId>
<artifactId>news-feed</artifactId>
<packaging>war</packaging>
<version>1.1.0-SNAPSHOT</version>
<version>1.1.1-SNAPSHOT</version>
<name>gCube News Feed Portlet</name>
<description>

@ -95,8 +95,8 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService
if (user == null) {
_log.warn("USER IS NULL setting testing user and Running OUTSIDE PORTAL");
user = "test.user";
user = "massimiliano.assante";
SessionManager.getInstance().getASLSession(sessionID, user).setScope("/gcube/devsec/devVRE");
// user = "massimiliano.assante";
// SessionManager.getInstance().getASLSession(sessionID, user).setScope("/gcube/devsec/devVRE");
}
else {
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
ArrayList<Feed> portalFeeds = (ArrayList<Feed>) store.getAllPortalPrivacyLevelFeeds();
@ -221,6 +208,9 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService
toMerge.add(feedsMap.get(key));
}
}
//sort the feeds in reverse chronological order
Collections.sort(toMerge, Collections.reverseOrder());
ArrayList<Feed> toReturn = new ArrayList<Feed>();
//return only <MAX_FEEDS_NO> feeds
if (toMerge.size() > MAX_FEEDS_NO)
@ -372,6 +362,7 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService
} catch (Exception e) {
e.printStackTrace();
}
Collections.sort(userFeeds, Collections.reverseOrder());
return enhanceFeeds(userFeeds, 2);
}
@ -385,6 +376,7 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService
} catch (Exception e) {
e.printStackTrace();
}
Collections.sort(userFeeds, Collections.reverseOrder());
return enhanceFeeds(userFeeds, 2);
}
@ -479,14 +471,9 @@ public class NewsServiceImpl extends RemoteServiceServlet implements NewsService
private ArrayList<EnhancedFeed> enhanceFeeds(ArrayList<Feed> toEnhance, int commentsNumberPerFeed) {
ArrayList<EnhancedFeed> toReturn = new ArrayList<EnhancedFeed>();
String username = getASLSession().getUsername();
//sort the Feeds
Collections.sort(toEnhance, Collections.reverseOrder());
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) {
feed.setDescription(replaceAmpersand(feed.getDescription()));
if (! feed.isApplicationFeed())

Loading…
Cancel
Save