Scarab commit: svn commit: r11004 - trunk/src/java/org/tigris/scarab/notification/ScarabNotificationManager.java
[email protected] Fri, 23 Apr 2010 15:34:13 -0700 (PDT)
| Newsgroups | gmane.comp.java.scarab.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: dabbous
Date: 2010-04-23 15:34:13-0700
New Revision: 11004
Modified:
trunk/src/java/org/tigris/scarab/notification/ScarabNotificationManager.java
Log:
Duplicate Comments filter throws NPE when no comments in ActivitySet
Modified: trunk/src/java/org/tigris/scarab/notification/ScarabNotificationManager.java
Url: http://scarab.tigris.org/source/browse/scarab/trunk/src/java/org/tigris/scarab/notification/ScarabNotificationManager.java?view=diff&pathrev=11004&r1=11003&r2=11004
==============================================================================
--- trunk/src/java/org/tigris/scarab/notification/ScarabNotificationManager.java (original)
+++ trunk/src/java/org/tigris/scarab/notification/ScarabNotificationManager.java 2010-04-23 15:34:13-0700
@@ -117,7 +117,8 @@
{
return NOTIFICATION_MANAGER_ID;
}
-
+
+ private static List<NotificationStatus> EMPTY_LIST = new ArrayList();
/**
* Receives an activitySet from which to generate notification. Current
@@ -848,29 +849,38 @@
* @param groupedActivities
* @return
*/
- private List<NotificationStatus> getUniqueCommentNotifications(
- Map groupedActivities) {
+ private List<NotificationStatus> getUniqueCommentNotifications( Map groupedActivities)
+ {
+ List<NotificationStatus> uniqueComments;
List<NotificationStatus> comments = (List<NotificationStatus>)groupedActivities.get(L10NKeySet.ActivityComments);
- Iterator<NotificationStatus> iter = comments.iterator();
- List<NotificationStatus> uniqueComments = new ArrayList<NotificationStatus>();
-
- List<Attachment> attachmentList = new ArrayList<Attachment>();
- while(iter.hasNext())
+ if (comments == null)
{
- NotificationStatus notificationStatus = iter.next();
- try {
- Activity activity = notificationStatus.getActivity();
- Attachment attachment = activity.getAttachment();
- if(!attachmentList.contains(attachment))
+ uniqueComments = EMPTY_LIST; // No comments in groupedActivities
+ }
+ else
+ {
+ Iterator<NotificationStatus> iter = comments.iterator();
+ uniqueComments = new ArrayList<NotificationStatus>();
+
+ List<Attachment> attachmentList = new ArrayList<Attachment>();
+ while(iter.hasNext())
+ {
+ NotificationStatus notificationStatus = iter.next();
+ try
+ {
+ Activity activity = notificationStatus.getActivity();
+ Attachment attachment = activity.getAttachment();
+ if(!attachmentList.contains(attachment))
+ {
+ attachmentList.add(attachment);
+ uniqueComments.add(notificationStatus);
+ }
+ }
+ catch (TorqueException e)
{
- attachmentList.add(attachment);
uniqueComments.add(notificationStatus);
}
}
- catch (TorqueException e)
- {
- uniqueComments.add(notificationStatus);
- }
}
return uniqueComments;
}
------------------------------------------------------
http://scarab.tigris.org/ds/viewMessage.do?dsForumId=3577&dsMessageId=2593840