Author: ruschein
Date: 2011-01-14 13:25:41 -0800 (Fri, 14 Jan 2011)
New Revision: 23465

Modified:
   core3/core-task-impl/trunk/pom.xml
   
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/InvertSelectedNodesTask.java
   
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/InvertSelectedNodesTaskFactory.java
   
core3/core-task-impl/trunk/src/main/resources/META-INF/spring/bundle-context-osgi.xml
   
core3/core-task-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
   
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/AbstractSelectTaskTester.java
   
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/AllFactoryTest.java
   
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/InvertSelectedNodesTaskTest.java
Log:
InvertSelectedNodesTask now uses the new RowSetAboutToBeChangedEvent and 
RowSetChangedEvent events.

Modified: core3/core-task-impl/trunk/pom.xml
===================================================================
--- core3/core-task-impl/trunk/pom.xml  2011-01-14 20:45:07 UTC (rev 23464)
+++ core3/core-task-impl/trunk/pom.xml  2011-01-14 21:25:41 UTC (rev 23465)
@@ -148,6 +148,10 @@
                        <version>1.8.1</version>
                        <scope>test</scope>
                </dependency>
+               <dependency>
+                       <groupId>org.cytoscape</groupId>
+                       <artifactId>event-api</artifactId>
+                       <version>3.0.0-alpha2-SNAPSHOT</version>
+               </dependency>
        </dependencies>
-
 </project>

Modified: 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/InvertSelectedNodesTask.java
===================================================================
--- 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/InvertSelectedNodesTask.java
    2011-01-14 20:45:07 UTC (rev 23464)
+++ 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/InvertSelectedNodesTask.java
    2011-01-14 21:25:41 UTC (rev 23465)
@@ -26,29 +26,45 @@
  You should have received a copy of the GNU Lesser General Public License
  along with this library; if not, write to the Free Software Foundation,
  Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
- */
+*/
 package org.cytoscape.task.internal.select;
 
 
+import org.cytoscape.event.CyEventHelper;
 import org.cytoscape.model.CyNetwork;
 import org.cytoscape.model.CyNode;
+import org.cytoscape.model.events.RowSetAboutToBeChangedEvent;
+import org.cytoscape.model.events.RowSetChangedEvent;
 import org.cytoscape.work.TaskMonitor;
 import org.cytoscape.view.model.CyNetworkViewManager;
 
 
 public class InvertSelectedNodesTask extends AbstractSelectTask {
-       public InvertSelectedNodesTask(final CyNetwork net, final 
CyNetworkViewManager networkViewManager) {
+       private final CyEventHelper eventHelper;
+
+       public InvertSelectedNodesTask(final CyNetwork net,
+                                      final CyNetworkViewManager 
networkViewManager,
+                                      final CyEventHelper eventHelper)
+       {
                super(net, networkViewManager);
+               this.eventHelper = eventHelper;
        }
 
-       public void run(TaskMonitor tm) {
-               for ( CyNode n : net.getNodeList() )  {
-                       if ( n.getCyRow().get("selected",Boolean.class) ) {
-                                n.getCyRow().set("selected",false);
-                       } else {
-                                n.getCyRow().set("selected",true);
+       @Override
+       public void run(final TaskMonitor tm) {
+               try {
+                       eventHelper.fireSynchronousEvent(new 
RowSetAboutToBeChangedEvent(this, net.getDefaultNodeTable()));
+
+                       for (final CyNode n : net.getNodeList())  {
+                               if (n.getCyRow().get("selected", Boolean.class))
+                                       n.getCyRow().set(CyNetwork.SELECTED, 
false);
+                               else
+                                       n.getCyRow().set(CyNetwork.SELECTED, 
true);
                        }
+               } finally {
+                       eventHelper.fireSynchronousEvent(new 
RowSetChangedEvent(this, net.getDefaultNodeTable()));
                }
+
                updateView();
        }
 }

Modified: 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/InvertSelectedNodesTaskFactory.java
===================================================================
--- 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/InvertSelectedNodesTaskFactory.java
     2011-01-14 20:45:07 UTC (rev 23464)
+++ 
core3/core-task-impl/trunk/src/main/java/org/cytoscape/task/internal/select/InvertSelectedNodesTaskFactory.java
     2011-01-14 21:25:41 UTC (rev 23465)
@@ -26,24 +26,30 @@
  You should have received a copy of the GNU Lesser General Public License
  along with this library; if not, write to the Free Software Foundation,
  Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
- */
+*/
 package org.cytoscape.task.internal.select;  
 
 
+import org.cytoscape.event.CyEventHelper;
+import org.cytoscape.task.AbstractNetworkTaskFactory;
 import org.cytoscape.view.model.CyNetworkViewManager;
 import org.cytoscape.work.TaskFactory;
 import org.cytoscape.work.TaskIterator;
-import org.cytoscape.task.AbstractNetworkTaskFactory;
 
 
 public class InvertSelectedNodesTaskFactory extends AbstractNetworkTaskFactory 
{
        private CyNetworkViewManager networkViewManager;
+       private final CyEventHelper eventHelper;
 
-       public InvertSelectedNodesTaskFactory(final CyNetworkViewManager 
networkViewManager) {
+       public InvertSelectedNodesTaskFactory(final CyNetworkViewManager 
networkViewManager,
+                                             final CyEventHelper eventHelper)
+       {
                this.networkViewManager = networkViewManager;
+               this.eventHelper = eventHelper;
        }
 
        public TaskIterator getTaskIterator() {
-               return new TaskIterator(new 
InvertSelectedNodesTask(net,networkViewManager));
+               return new TaskIterator(
+                               new InvertSelectedNodesTask(net, 
networkViewManager, eventHelper));
        } 
 }

Modified: 
core3/core-task-impl/trunk/src/main/resources/META-INF/spring/bundle-context-osgi.xml
===================================================================
--- 
core3/core-task-impl/trunk/src/main/resources/META-INF/spring/bundle-context-osgi.xml
       2011-01-14 20:45:07 UTC (rev 23464)
+++ 
core3/core-task-impl/trunk/src/main/resources/META-INF/spring/bundle-context-osgi.xml
       2011-01-14 21:25:41 UTC (rev 23465)
@@ -6,6 +6,9 @@
        default-lazy-init="false">
 
        <!--  collect necessary services -->
+       <osgi:reference id="cyEventHelperRef"
+               interface="org.cytoscape.event.CyEventHelper" />
+
        <osgi:reference id="cyNetworkNamingServiceRef"
                interface="org.cytoscape.session.CyNetworkNaming" />
 

Modified: 
core3/core-task-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
===================================================================
--- 
core3/core-task-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
    2011-01-14 20:45:07 UTC (rev 23464)
+++ 
core3/core-task-impl/trunk/src/main/resources/META-INF/spring/bundle-context.xml
    2011-01-14 21:25:41 UTC (rev 23465)
@@ -124,6 +124,7 @@
        <bean id="invertSelectedNodesTaskFactory"
              
class="org.cytoscape.task.internal.select.InvertSelectedNodesTaskFactory">
                <constructor-arg ref="cyNetworkViewManagerServiceRef" />
+               <constructor-arg ref="cyEventHelperRef" />
        </bean>
 
        <bean id="selectFromFileListTaskFactory"

Modified: 
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/AbstractSelectTaskTester.java
===================================================================
--- 
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/AbstractSelectTaskTester.java
   2011-01-14 20:45:07 UTC (rev 23464)
+++ 
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/AbstractSelectTaskTester.java
   2011-01-14 21:25:41 UTC (rev 23465)
@@ -1,13 +1,6 @@
 /*
   Copyright (c) 2010, The Cytoscape Consortium (www.cytoscape.org)
 
-  The Cytoscape Consortium is:
-  - Institute for Systems Biology
-  - University of California San Diego
-  - Memorial Sloan-Kettering Cancer Center
-  - Institut Pasteur
-  - Agilent Technologies
-
   This library is free software; you can redistribute it and/or modify it
   under the terms of the GNU Lesser General Public License as published
   by the Free Software Foundation; either version 2.1 of the License, or
@@ -32,19 +25,19 @@
   along with this library; if not, write to the Free Software Foundation,
   Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
 */
-
-
 package org.cytoscape.task.internal.select;
 
+
 import static org.mockito.Mockito.*;
 
-import org.cytoscape.view.model.CyNetworkViewManager;
-import org.cytoscape.view.model.CyNetworkView;
-import org.cytoscape.work.TaskMonitor;
+import org.cytoscape.model.CyEdge;
 import org.cytoscape.model.CyNetwork;
 import org.cytoscape.model.CyNode;
-import org.cytoscape.model.CyEdge;
 import org.cytoscape.model.CyRow;
+import org.cytoscape.model.CyTable;
+import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.view.model.CyNetworkViewManager;
+import org.cytoscape.work.TaskMonitor;
 
 import java.util.List;
 import java.util.ArrayList;
@@ -53,6 +46,7 @@
 public class AbstractSelectTaskTester {
        CyNetworkViewManager networkViewManager;
        TaskMonitor tm;
+       CyTable table;
        CyNetwork net; 
        CyRow r1;
        CyEdge e1;
@@ -64,7 +58,9 @@
        CyNode e4;
 
        public void setUp() throws Exception {
+               table = mock(CyTable.class);
                net = mock(CyNetwork.class);
+               when(net.getDefaultNodeTable()).thenReturn(table);
 
                CyNetworkView view = mock(CyNetworkView.class);
                when(view.getModel()).thenReturn(net);

Modified: 
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/AllFactoryTest.java
===================================================================
--- 
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/AllFactoryTest.java
     2011-01-14 20:45:07 UTC (rev 23464)
+++ 
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/AllFactoryTest.java
     2011-01-14 21:25:41 UTC (rev 23465)
@@ -36,10 +36,11 @@
 import java.util.List;
 import java.util.ArrayList;
 
+import org.cytoscape.event.CyEventHelper;
+import org.cytoscape.model.CyNetwork;
 import org.cytoscape.model.CyNetworkManager;
+import org.cytoscape.task.NetworkTaskFactory;
 import org.cytoscape.view.model.CyNetworkViewManager;
-import org.cytoscape.model.CyNetwork;
-import org.cytoscape.task.NetworkTaskFactory;
 import org.cytoscape.work.TaskIterator;
 import org.cytoscape.work.Task;
 
@@ -78,7 +79,8 @@
 
        @Test
        public void testInvertSelectedNodesTaskFactory() {
-               executeTest( new 
InvertSelectedNodesTaskFactory(networkViewManager) );
+               final CyEventHelper eventHelper = mock(CyEventHelper.class);
+               executeTest(new 
InvertSelectedNodesTaskFactory(networkViewManager, eventHelper));
        }
 
        @Test

Modified: 
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/InvertSelectedNodesTaskTest.java
===================================================================
--- 
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/InvertSelectedNodesTaskTest.java
        2011-01-14 20:45:07 UTC (rev 23464)
+++ 
core3/core-task-impl/trunk/src/test/java/org/cytoscape/task/internal/select/InvertSelectedNodesTaskTest.java
        2011-01-14 21:25:41 UTC (rev 23465)
@@ -25,10 +25,9 @@
   along with this library; if not, write to the Free Software Foundation,
   Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
 */
+package org.cytoscape.task.internal.select;
 
 
-package org.cytoscape.task.internal.select;
-
 import static org.mockito.Mockito.*;
 import static org.junit.Assert.*;
 import org.junit.Test;
@@ -37,13 +36,14 @@
 import java.util.List;
 import java.util.ArrayList;
 
+import org.cytoscape.event.CyEventHelper;
+import org.cytoscape.model.CyNetwork;
+import org.cytoscape.model.CyRow;
+import org.cytoscape.model.CyNode;
 import org.cytoscape.work.TaskMonitor;
 import org.cytoscape.work.TaskIterator;
 import org.cytoscape.work.TaskFactory;
 import org.cytoscape.work.Task;
-import org.cytoscape.model.CyNetwork;
-import org.cytoscape.model.CyRow;
-import org.cytoscape.model.CyNode;
 
 
 public class InvertSelectedNodesTaskTest extends AbstractSelectTaskTester {
@@ -55,15 +55,17 @@
        @Test
        public void testRun() throws Exception {
                // more setup
-               when(r3.get("selected",Boolean.class)).thenReturn(false);       
-               when(r4.get("selected",Boolean.class)).thenReturn(true);        
+               when(r3.get("selected", Boolean.class)).thenReturn(false);      
+               when(r4.get("selected", Boolean.class)).thenReturn(true);       
 
+               final CyEventHelper eventHelper = mock(CyEventHelper.class);
+
                // run the task
-               Task t = new InvertSelectedNodesTask(net, networkViewManager);
+               Task t = new InvertSelectedNodesTask(net, networkViewManager, 
eventHelper);
                t.run(tm);
 
                // check that the expected rows were set
-               verify(r3, times(1)).set("selected",true);
-               verify(r4, times(1)).set("selected",false);
+               verify(r3, times(1)).set("selected", true);
+               verify(r4, times(1)).set("selected", false);
        }
 }

-- 
You received this message because you are subscribed to the Google Groups 
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/cytoscape-cvs?hl=en.

Reply via email to