Author: kono
Date: 2011-04-11 12:49:40 -0700 (Mon, 11 Apr 2011)
New Revision: 24740
Modified:
core3/io-impl/trunk/src/main/java/org/cytoscape/io/internal/read/sif/SIFNetworkViewReader.java
Log:
Performance problem caused by lots of RowSet events had been fixed for SIF.
Probably, there are some more similar bug in this bundle.
Modified:
core3/io-impl/trunk/src/main/java/org/cytoscape/io/internal/read/sif/SIFNetworkViewReader.java
===================================================================
---
core3/io-impl/trunk/src/main/java/org/cytoscape/io/internal/read/sif/SIFNetworkViewReader.java
2011-04-11 19:38:25 UTC (rev 24739)
+++
core3/io-impl/trunk/src/main/java/org/cytoscape/io/internal/read/sif/SIFNetworkViewReader.java
2011-04-11 19:49:40 UTC (rev 24740)
@@ -131,9 +131,9 @@
tm.setProgress(0.25);
- final CyTable table = network.getDefaultNodeTable();
+ final CyTable nodeTable = network.getDefaultNodeTable();
try {
- eventHelper.fireSynchronousEvent(new RowsAboutToChangeEvent(this,
table));
+ eventHelper.fireSynchronousEvent(new RowsAboutToChangeEvent(this,
nodeTable));
for (final String nodeName : nodeMap.keySet()) {
if (cancelled)
@@ -147,7 +147,7 @@
}
} finally {
- eventHelper.fireSynchronousEvent(new
RowsFinishedChangingEvent(this, table));
+ eventHelper.fireSynchronousEvent(new
RowsFinishedChangingEvent(this, nodeTable));
}
tm.setProgress(0.65);
@@ -159,18 +159,24 @@
String interactionType;
CyEdge edge;
- for (Interaction interaction : interactions) {
- if (cancelled)
- return;
+ final CyTable edgeTable = network.getDefaultEdgeTable();
+ try {
+ eventHelper.fireSynchronousEvent(new RowsAboutToChangeEvent(this,
edgeTable));
+ for (Interaction interaction : interactions) {
+ if (cancelled)
+ return;
- srcName = interaction.getSource();
- interactionType = interaction.getType();
+ srcName = interaction.getSource();
+ interactionType = interaction.getType();
- for (String tgtName : interaction.getTargets()) {
- edge = network.addEdge(nodeMap.get(srcName),
nodeMap.get(tgtName), true);
- edge.getCyRow().set(CyTableEntry.NAME, srcName + " (" +
interactionType + ") " + tgtName);
- edge.getCyRow().set(INTERACTION, interactionType);
+ for (String tgtName : interaction.getTargets()) {
+ edge = network.addEdge(nodeMap.get(srcName),
nodeMap.get(tgtName), true);
+ edge.getCyRow().set(CyTableEntry.NAME, srcName + " (" +
interactionType + ") " + tgtName);
+ edge.getCyRow().set(INTERACTION, interactionType);
+ }
}
+ } finally {
+ eventHelper.fireSynchronousEvent(new
RowsFinishedChangingEvent(this, edgeTable));
}
tm.setProgress(0.90);
--
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.