Author: pwang
Date: 2011-01-19 15:46:31 -0800 (Wed, 19 Jan 2011)
New Revision: 23518
Modified:
core3/table-import-impl/trunk/src/main/java/org/cytoscape/tableimport/internal/reader/NetworkLineParser.java
core3/table-import-impl/trunk/src/main/java/org/cytoscape/tableimport/internal/reader/NetworkTableReader.java
Log:
Bug fix
Modified:
core3/table-import-impl/trunk/src/main/java/org/cytoscape/tableimport/internal/reader/NetworkLineParser.java
===================================================================
---
core3/table-import-impl/trunk/src/main/java/org/cytoscape/tableimport/internal/reader/NetworkLineParser.java
2011-01-19 23:45:13 UTC (rev 23517)
+++
core3/table-import-impl/trunk/src/main/java/org/cytoscape/tableimport/internal/reader/NetworkLineParser.java
2011-01-19 23:46:31 UTC (rev 23518)
@@ -46,6 +46,7 @@
import java.util.ArrayList;
import java.util.List;
+import java.util.HashMap;
/**
@@ -59,6 +60,8 @@
private final List<Long> nodeList;
private final List<Long> edgeList;
private CyNetwork network;
+ private HashMap<String, CyNode> nodeMap = new HashMap<String, CyNode>();
+
/**
* Creates a new NetworkLineParser object.
*
@@ -66,12 +69,11 @@
* @param edgeList DOCUMENT ME!
* @param nmp DOCUMENT ME!
*/
- public NetworkLineParser(CyNetwork network, List<Long> nodeList,
List<Long> edgeList,
+ public NetworkLineParser(List<Long> nodeList, List<Long> edgeList,
final NetworkTableMappingParameters nmp) {
this.nmp = nmp;
this.nodeList = nodeList;
this.edgeList = edgeList;
- this.network = network;
}
/**
@@ -119,8 +121,14 @@
if (nodeIndex.equals(-1) == false && (nodeIndex <=
(parts.length - 1)) && (parts[nodeIndex] != null)) {
//node = Cytoscape.getCyNode(parts[nodeIndex], true);
+
+ if (this.nodeMap.containsKey(parts[nodeIndex])){
+ return nodeMap.get(parts[nodeIndex]);
+ }
node = network.addNode();
node.getCyRow().set("name", parts[nodeIndex]);
+
+ nodeMap.put(parts[nodeIndex], node);
nodeList.add(node.getSUID());
}
@@ -224,4 +232,8 @@
return listAttr;
}
+
+ public void setNetwork(CyNetwork network){
+ this.network = network;
+ }
}
Modified:
core3/table-import-impl/trunk/src/main/java/org/cytoscape/tableimport/internal/reader/NetworkTableReader.java
===================================================================
---
core3/table-import-impl/trunk/src/main/java/org/cytoscape/tableimport/internal/reader/NetworkTableReader.java
2011-01-19 23:45:13 UTC (rev 23517)
+++
core3/table-import-impl/trunk/src/main/java/org/cytoscape/tableimport/internal/reader/NetworkTableReader.java
2011-01-19 23:46:31 UTC (rev 23518)
@@ -75,6 +75,7 @@
protected final List<Long> edgeList;
protected final int startLineNumber;
protected final String commentChar;
+
private CyNetwork network;
private static final Logger logger =
LoggerFactory.getLogger(NetworkTableReader.class);
@@ -99,7 +100,7 @@
this.edgeList = new ArrayList<Long>();
this.commentChar = commentChar;
- parser = new NetworkLineParser(network, nodeList, edgeList,
nmp);
+ parser = new NetworkLineParser(nodeList, edgeList, nmp);
}
/**
@@ -126,6 +127,8 @@
InputStream is = null;
String line;
+ parser.setNetwork(network);
+
try {
BufferedReader bufRd = null;
--
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.