Author: mes
Date: 2011-06-21 15:35:56 -0700 (Tue, 21 Jun 2011)
New Revision: 25846

Modified:
   
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/CyNetworkViewManagerImpl.java
   
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/EdgeViewImpl.java
   
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/NetworkViewImpl.java
   
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/NodeViewImpl.java
   
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/ViewImpl.java
   core3/viewmodel-impl/trunk/pom.xml
Log:
updated to for event-api changes that rely on payload events instead of 
microlisteners

Modified: 
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/CyNetworkViewManagerImpl.java
===================================================================
--- 
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/CyNetworkViewManagerImpl.java
       2011-06-21 22:35:36 UTC (rev 25845)
+++ 
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/CyNetworkViewManagerImpl.java
       2011-06-21 22:35:56 UTC (rev 25846)
@@ -104,7 +104,7 @@
                        throw new IllegalArgumentException("network view is not 
recognized by this NetworkManager");
 
                // let everyone know!
-               cyEventHelper.fireSynchronousEvent(new 
NetworkViewAboutToBeDestroyedEvent(this, view));
+               cyEventHelper.fireEvent(new 
NetworkViewAboutToBeDestroyedEvent(this, view));
 
                synchronized (this) {
                        // do this again within the lock to be safe
@@ -114,7 +114,7 @@
                        networkViewMap.remove(viewID);
                }
 
-               cyEventHelper.fireSynchronousEvent(new 
NetworkViewDestroyedEvent(this));
+               cyEventHelper.fireEvent(new NetworkViewDestroyedEvent(this));
                view = null;
                logger.debug("######### Network View deleted: " + viewID);
        }
@@ -133,7 +133,7 @@
                }
 
                logger.debug("Firing event: NetworkViewAddedEvent");
-               cyEventHelper.fireSynchronousEvent(new 
NetworkViewAddedEvent(this, view));
+               cyEventHelper.fireEvent(new NetworkViewAddedEvent(this, view));
                logger.debug("Done event: NetworkViewAddedEvent");
        }
 }

Modified: 
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/EdgeViewImpl.java
===================================================================
--- 
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/EdgeViewImpl.java
   2011-06-21 22:35:36 UTC (rev 25845)
+++ 
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/EdgeViewImpl.java
   2011-06-21 22:35:56 UTC (rev 25846)
@@ -4,7 +4,8 @@
 import org.cytoscape.model.CyEdge;
 import org.cytoscape.view.model.CyNetworkView;
 import org.cytoscape.view.model.VisualProperty;
-import org.cytoscape.view.model.events.EdgeViewChangeMicroListener;
+import org.cytoscape.view.model.events.EdgeViewsChangedEvent;
+import org.cytoscape.view.model.events.ViewChangeRecord;
 
 public class EdgeViewImpl extends ViewImpl<CyEdge> {
 
@@ -16,15 +17,14 @@
        }
 
        @Override
-       public <T, V extends T> void setVisualProperty(
-                       VisualProperty<? extends T> vp, V value) {
+       public <T, V extends T> void setVisualProperty(VisualProperty<? extends 
T> vp, V value) {
                if(value == null)
                        this.visualProperties.remove(vp);
                else
                        this.visualProperties.put(vp, value);
                
                // getVisualProperty method call is REQUIRED to check bypass.
-               
cyEventHelper.getMicroListener(EdgeViewChangeMicroListener.class, 
parent).edgeVisualPropertySet(this, vp, this.getVisualProperty(vp));
+               cyEventHelper.addEventPayload(parent, new 
ViewChangeRecord<CyEdge>(this, vp, 
this.getVisualProperty(vp)),EdgeViewsChangedEvent.class);
        }
 
 }

Modified: 
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/NetworkViewImpl.java
===================================================================
--- 
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/NetworkViewImpl.java
        2011-06-21 22:35:36 UTC (rev 25845)
+++ 
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/NetworkViewImpl.java
        2011-06-21 22:35:56 UTC (rev 25846)
@@ -1,9 +1,11 @@
 package org.cytoscape.view.model.internal;
 
 
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.HashMap;
 import java.util.HashSet;
+import java.util.List;
 import java.util.Map;
 import java.util.Set;
 
@@ -12,25 +14,26 @@
 import org.cytoscape.model.CyNetwork;
 import org.cytoscape.model.CyNode;
 import org.cytoscape.model.CyTableEntry;
-import org.cytoscape.model.events.AboutToRemoveEdgeEvent;
-import org.cytoscape.model.events.AboutToRemoveEdgeListener;
-import org.cytoscape.model.events.AboutToRemoveNodeEvent;
-import org.cytoscape.model.events.AboutToRemoveNodeListener;
-import org.cytoscape.model.events.AddedEdgeEvent;
-import org.cytoscape.model.events.AddedEdgeListener;
-import org.cytoscape.model.events.AddedNodeEvent;
-import org.cytoscape.model.events.AddedNodeListener;
+import org.cytoscape.model.events.AboutToRemoveEdgesEvent;
+import org.cytoscape.model.events.AboutToRemoveEdgesListener;
+import org.cytoscape.model.events.AboutToRemoveNodesEvent;
+import org.cytoscape.model.events.AboutToRemoveNodesListener;
+import org.cytoscape.model.events.AddedEdgesEvent;
+import org.cytoscape.model.events.AddedEdgesListener;
+import org.cytoscape.model.events.AddedNodesEvent;
+import org.cytoscape.model.events.AddedNodesListener;
 import org.cytoscape.view.model.CyNetworkView;
 import org.cytoscape.view.model.View;
 import org.cytoscape.view.model.VisualProperty;
-import org.cytoscape.view.model.events.AboutToRemoveEdgeViewMicroListener;
-import org.cytoscape.view.model.events.AboutToRemoveNodeViewMicroListener;
-import org.cytoscape.view.model.events.AddedEdgeViewEvent;
-import org.cytoscape.view.model.events.AddedNodeViewEvent;
+import org.cytoscape.view.model.events.AboutToRemoveEdgeViewsEvent;
+import org.cytoscape.view.model.events.AboutToRemoveNodeViewsEvent;
+import org.cytoscape.view.model.events.AddedEdgeViewsEvent;
+import org.cytoscape.view.model.events.AddedNodeViewsEvent;
 import org.cytoscape.view.model.events.FitContentEvent;
 import org.cytoscape.view.model.events.FitSelectedEvent;
-import org.cytoscape.view.model.events.NetworkViewChangeMicroListener;
+import org.cytoscape.view.model.events.NetworkViewChangedEvent;
 import org.cytoscape.view.model.events.UpdateNetworkPresentationEvent;
+import org.cytoscape.view.model.events.ViewChangeRecord;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -39,8 +42,8 @@
  * Row-oriented implementation of CyNetworkView model. This is a consolidated
  * view model representing a network.
  */
-public class NetworkViewImpl extends ViewImpl<CyNetwork> implements 
CyNetworkView, AddedEdgeListener,
-               AddedNodeListener, AboutToRemoveEdgeListener, 
AboutToRemoveNodeListener
+public class NetworkViewImpl extends ViewImpl<CyNetwork> implements 
CyNetworkView, AddedEdgesListener,
+               AddedNodesListener, AboutToRemoveEdgesListener, 
AboutToRemoveNodesListener
 {
        private static final Logger logger = 
LoggerFactory.getLogger(NetworkViewImpl.class);
 
@@ -105,92 +108,112 @@
        // /// Event Handlers //////
 
        @Override
-       public void handleEvent(AboutToRemoveNodeEvent e) {
+       public void handleEvent(AboutToRemoveNodesEvent e) {
                if (model != e.getSource())
                        return;
 
-               if (!nodeViews.containsKey(e.getNode()))
+               List<View<CyNode>> nvs = new 
ArrayList<View<CyNode>>(e.getNodes().size());
+               for ( CyNode n : e.getNodes()) {
+                       View<CyNode> v = nodeViews.get(n);
+                       if ( v != null)
+                               nvs.add(v);
+               }
+               
+               if (nvs.size() <= 0)
                        return;
+               
+               cyEventHelper.fireEvent(new AboutToRemoveNodeViewsEvent(this, 
nvs));
 
-               final AboutToRemoveNodeViewMicroListener listener =
-                       
cyEventHelper.getMicroListener(AboutToRemoveNodeViewMicroListener.class, this);
-               listener.nodeViewAboutToBeRemoved(nodeViews.get(e.getNode()), 
this);
-
-               nodeViews.remove(e.getNode());
+               for ( CyNode n : e.getNodes()) 
+                       nodeViews.remove(n);
+               
        }
 
        @Override
-       public void handleEvent(AboutToRemoveEdgeEvent e) {
+       public void handleEvent(AboutToRemoveEdgesEvent e) {
                if (model != e.getSource())
                        return;
 
-               if (!edgeViews.containsKey(e.getEdge()))
+               List<View<CyEdge>> evs = new 
ArrayList<View<CyEdge>>(e.getEdges().size());
+               for ( CyEdge edge : e.getEdges() ) {
+                       View<CyEdge> v = edgeViews.get(edge);
+                       if ( v != null)
+                               evs.add(v);
+               }
+
+               if (evs.size() <= 0)
                        return;
 
-               final AboutToRemoveEdgeViewMicroListener listener =
-                       
cyEventHelper.getMicroListener(AboutToRemoveEdgeViewMicroListener.class, this);
-               listener.edgeViewAboutToBeRemoved(edgeViews.get(e.getEdge()), 
this);
+               cyEventHelper.fireEvent(new AboutToRemoveEdgeViewsEvent(this, 
evs));
 
-               edgeViews.remove(e.getEdge());
+               for ( CyEdge edge : e.getEdges() ) 
+                       edgeViews.remove(edge);
        }
 
        
        @Override
-       public void handleEvent(final AddedNodeEvent e) {
+       public void handleEvent(final AddedNodesEvent e) {
                // Respond to the event only if the source is equal to the 
network model associated with this view.
                if (model != e.getSource())
                        return;
 
-               final CyNode node = e.getNode();
-               logger.debug("Creating new node view model: " + 
node.toString());
-               final View<CyNode> nv = new NodeViewImpl(node, cyEventHelper, 
this);
-               nodeViews.put(node, nv);
+               List<View<CyNode>> nl = new 
ArrayList<View<CyNode>>(e.getPayloadCollection().size());
+               for ( CyNode node : e.getPayloadCollection()) {
+                       logger.debug("Creating new node view model: " + 
node.toString());
+                       final View<CyNode> nv = new NodeViewImpl(node, 
cyEventHelper, this);
+                       nodeViews.put(node, nv);
+                       nl.add(nv);
+               }
                
                // Cascading event.
-               cyEventHelper.fireSynchronousEvent(new AddedNodeViewEvent(this, 
nv));
+               cyEventHelper.fireEvent(new AddedNodeViewsEvent(this, nl));
        }
 
        
        @Override
-       public void handleEvent(final AddedEdgeEvent e) {
+       public void handleEvent(final AddedEdgesEvent e) {
                if (model != e.getSource())
                        return;
 
-               final CyEdge edge = e.getEdge();
-               final View<CyEdge> ev = new EdgeViewImpl(edge, cyEventHelper, 
this);
-               edgeViews.put(edge, ev); // FIXME: View creation here and in
-                                                                       // 
initializer: should be in one place
-
-               cyEventHelper.fireSynchronousEvent(new AddedEdgeViewEvent(this, 
ev));
+               List<View<CyEdge>> el = new 
ArrayList<View<CyEdge>>(e.getPayloadCollection().size());
+               for ( CyEdge edge : e.getPayloadCollection()) {
+                       final View<CyEdge> ev = new EdgeViewImpl(edge, 
cyEventHelper, this);
+                       edgeViews.put(edge, ev); // FIXME: View creation here 
and in initializer: should be in one place
+                       el.add(ev);
+               }
+               
+               cyEventHelper.fireEvent(new AddedEdgeViewsEvent(this, el));
        }
        
        // The following methods are utilities for calling methods in upper 
layer (presentation)
        
+       @Override
        public void fitContent() {
                logger.debug("Firing fitContent event from: View ID = " + 
this.suid);
-               cyEventHelper.fireSynchronousEvent( new FitContentEvent(this));
+               cyEventHelper.fireEvent( new FitContentEvent(this));
        }
        
+       @Override
        public void fitSelected() {
                logger.debug("Firing fitSelected event from: View ID = " + 
this.suid);
-               cyEventHelper.fireSynchronousEvent( new FitSelectedEvent(this));
+               cyEventHelper.fireEvent( new FitSelectedEvent(this));
        }
        
+       @Override
        public void updateView() {
                logger.debug("Firing update view event from: View ID = " + 
this.suid);
-               cyEventHelper.fireSynchronousEvent( new 
UpdateNetworkPresentationEvent(this));
+               cyEventHelper.fireEvent( new 
UpdateNetworkPresentationEvent(this));
        }
 
 
        @Override
-       public <T, V extends T> void setVisualProperty(
-                       VisualProperty<? extends T> vp, V value) {
+       public <T, V extends T> void setVisualProperty(VisualProperty<? extends 
T> vp, V value) {
                if(value == null)
                        this.visualProperties.remove(vp);
                else
                        this.visualProperties.put(vp, value);
                
-               
cyEventHelper.getMicroListener(NetworkViewChangeMicroListener.class, 
this).networkVisualPropertySet(this, vp, value);   
+               cyEventHelper.addEventPayload((CyNetworkView)this, new 
ViewChangeRecord<CyNetwork>(this, vp, value), NetworkViewChangedEvent.class);   
 
        }
 
 }

Modified: 
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/NodeViewImpl.java
===================================================================
--- 
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/NodeViewImpl.java
   2011-06-21 22:35:36 UTC (rev 25845)
+++ 
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/NodeViewImpl.java
   2011-06-21 22:35:56 UTC (rev 25846)
@@ -4,7 +4,8 @@
 import org.cytoscape.model.CyNode;
 import org.cytoscape.view.model.CyNetworkView;
 import org.cytoscape.view.model.VisualProperty;
-import org.cytoscape.view.model.events.NodeViewChangeMicroListener;
+import org.cytoscape.view.model.events.NodeViewsChangedEvent;
+import org.cytoscape.view.model.events.ViewChangeRecord;
 
 public class NodeViewImpl extends ViewImpl<CyNode> {
 
@@ -16,8 +17,7 @@
        }
        
        @Override
-       public <T, V extends T> void setVisualProperty(
-                       VisualProperty<? extends T> vp, V value) {
+       public <T, V extends T> void setVisualProperty(VisualProperty<? extends 
T> vp, V value) {
                
                if(value == null)
                        this.visualProperties.remove(vp);
@@ -25,7 +25,7 @@
                        this.visualProperties.put(vp, value);
                
                // getVisualProperty method call is REQUIRED to check bypass.
-               
cyEventHelper.getMicroListener(NodeViewChangeMicroListener.class, 
parent).nodeVisualPropertySet(this, vp, this.getVisualProperty(vp));
+               cyEventHelper.addEventPayload(parent, new 
ViewChangeRecord<CyNode>(this,vp,getVisualProperty(vp)), 
NodeViewsChangedEvent.class);
        }
 
 }

Modified: 
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/ViewImpl.java
===================================================================
--- 
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/ViewImpl.java
       2011-06-21 22:35:36 UTC (rev 25845)
+++ 
core3/viewmodel-impl/trunk/impl/src/main/java/org/cytoscape/view/model/internal/ViewImpl.java
       2011-06-21 22:35:56 UTC (rev 25846)
@@ -7,7 +7,6 @@
 import org.cytoscape.model.SUIDFactory;
 import org.cytoscape.view.model.View;
 import org.cytoscape.view.model.VisualProperty;
-import org.cytoscape.view.model.events.NodeViewChangeMicroListener;
 
 
 /**
@@ -62,8 +61,7 @@
        }
        
 
-       abstract public <T, V extends T> void setVisualProperty(
-                       VisualProperty<? extends T> vp, V value);
+       abstract public <T, V extends T> void 
setVisualProperty(VisualProperty<? extends T> vp, V value);
 
        
        @SuppressWarnings("unchecked")
@@ -83,8 +81,7 @@
        
        // TODO: should I fire event?
        @Override
-       public <T, V extends T> void setLockedValue(VisualProperty<? extends T> 
vp,
-                       V value) {
+       public <T, V extends T> void setLockedValue(VisualProperty<? extends T> 
vp, V value) {
                this.visualPropertyLocks.put(vp, value);
        }
        

Modified: core3/viewmodel-impl/trunk/pom.xml
===================================================================
--- core3/viewmodel-impl/trunk/pom.xml  2011-06-21 22:35:36 UTC (rev 25845)
+++ core3/viewmodel-impl/trunk/pom.xml  2011-06-21 22:35:56 UTC (rev 25846)
@@ -80,13 +80,13 @@
                <dependency>
                        <groupId>org.cytoscape</groupId>
                        <artifactId>model-api</artifactId>
-                       <version>3.0.0-alpha4</version>
+                       <version>3.0.0-alpha5-SNAPSHOT</version>
                        <scope>provided</scope>
                </dependency>
                <dependency>
                        <groupId>org.cytoscape</groupId>
                        <artifactId>event-api</artifactId>
-                       <version>3.0.0-alpha3</version>
+                       <version>3.0.0-alpha6-SNAPSHOT</version>
                        <scope>provided</scope>
                </dependency>
                <dependency>
@@ -117,7 +117,7 @@
                <dependency>
                        <groupId>org.cytoscape</groupId>
                        <artifactId>event-api</artifactId>
-                       <version>3.0.0-alpha3</version>
+                       <version>3.0.0-alpha6-SNAPSHOT</version>
                        <type>test-jar</type>
                        <scope>test</scope>
                </dependency>

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