svn commit: r15609 - trunk/src/argouml-app/src/org/argouml/cognitive: . ui

[email protected]
Newsgroups gmane.comp.lang.uml.argouml.cvs
Message-ID <[email protected]>
Author: penyaskito
Date: 2008-08-26 05:28:31-0700
New Revision: 15609

Modified:
   trunk/src/argouml-app/src/org/argouml/cognitive/Designer.java
   trunk/src/argouml-app/src/org/argouml/cognitive/ui/GoListToPriorityToItem.java

Log:
Issue 5024: Lock the list when getting the ToDo items count.

Modified: trunk/src/argouml-app/src/org/argouml/cognitive/Designer.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/cognitive/Designer.java?view=diff&rev=15609&p1=trunk/src/argouml-app/src/org/argouml/cognitive/Designer.java&p2=trunk/src/argouml-app/src/org/argouml/cognitive/Designer.java&r1=15608&r2=15609
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/cognitive/Designer.java	(original)
+++ trunk/src/argouml-app/src/org/argouml/cognitive/Designer.java	2008-08-26 05:28:31-0700
@@ -962,4 +962,21 @@
      * The UID.
      */
     private static final long serialVersionUID = -3647853023882216454L;
+
+    /**
+     * Gets the number of ToDo items with the given priority.
+     * @param priority The priority filter
+     * @return The number of ToDo items with that priority
+     */
+    public int getToDoListCount(final int priority) {
+        int count = 0;
+        synchronized (toDoList) {
+            for (ToDoItem item :  toDoList) {
+                if (item.getPriority() == priority) {
+                    ++count;
+                }
+            }
+        }
+        return count;
+    }
 }

Modified: trunk/src/argouml-app/src/org/argouml/cognitive/ui/GoListToPriorityToItem.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/cognitive/ui/GoListToPriorityToItem.java?view=diff&rev=15609&p1=trunk/src/argouml-app/src/org/argouml/cognitive/ui/GoListToPriorityToItem.java&p2=trunk/src/argouml-app/src/org/argouml/cognitive/ui/GoListToPriorityToItem.java&r1=15608&r2=15609
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/cognitive/ui/GoListToPriorityToItem.java	(original)
+++ trunk/src/argouml-app/src/org/argouml/cognitive/ui/GoListToPriorityToItem.java	2008-08-26 05:28:31-0700
@@ -70,14 +70,8 @@
 	    return PriorityNode.getPriorityList().size();
 	}
 	if (parent instanceof PriorityNode) {
-	    int res = 0;
 	    PriorityNode pn = (PriorityNode) parent;
-            for (ToDoItem item :  Designer.theDesigner().getToDoList()) {
-		if (item.getPriority() == pn.getPriority()) {
-                    res++;
-                }
-	    }
-	    return res;
+	    return Designer.theDesigner().getToDoListCount(pn.getPriority());
 	}
 	return 0;
     }
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.