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;
     }

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to