Author: rodche
Date: 2012-06-11 13:40:49 -0700 (Mon, 11 Jun 2012)
New Revision: 29527
Removed:
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/ExecutePhysicalEntitySearchTaskFactory.java
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/GetParentInteractions.java
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/GetParentInteractionsTaskFactory.java
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/LoadNetworkFromUrlTaskFactory.java
Modified:
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/CPath2Factory.java
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/cytoscape/MergeNetworkEdit.java
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/mapping/MapCPathToCytoscape.java
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/plugin/CPathPlugIn2.java
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/ExecuteGetRecordByCPathId.java
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/ExecutePhysicalEntitySearch.java
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/LoadNetworkFromUrlTask.java
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/MergeNetworkTask.java
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/util/AttributeUtil.java
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/util/NetworkUtil.java
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/view/SearchBoxPanel.java
Log:
Fixed bug #1100. Plus, some cleanup.
Modified:
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/CPath2Factory.java
===================================================================
---
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/CPath2Factory.java
2012-06-11 18:27:38 UTC (rev 29526)
+++
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/CPath2Factory.java
2012-06-11 20:40:49 UTC (rev 29527)
@@ -40,6 +40,7 @@
import org.cytoscape.view.layout.CyLayoutAlgorithmManager;
import org.cytoscape.view.model.CyNetworkViewManager;
import org.cytoscape.view.vizmap.VisualMappingManager;
+import org.cytoscape.work.Task;
import org.cytoscape.work.TaskFactory;
import org.cytoscape.work.TaskManager;
import org.cytoscape.work.undo.AbstractCyEdit;
@@ -164,7 +165,7 @@
return naming;
}
- public Thread createNetworkUtil(String cpathRequest, CyNetwork network,
boolean merging) {
+ public Task createNetworkUtil(String cpathRequest, CyNetwork network,
boolean merging) {
return new NetworkUtil(cpathRequest, network, merging, this);
}
Modified:
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/cytoscape/MergeNetworkEdit.java
===================================================================
---
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/cytoscape/MergeNetworkEdit.java
2012-06-11 18:27:38 UTC (rev 29526)
+++
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/cytoscape/MergeNetworkEdit.java
2012-06-11 20:40:49 UTC (rev 29527)
@@ -132,7 +132,7 @@
// iterate through nodes and restore each one (also set proper
position)
for (CyNode cyNode : cyNodes.keySet()) {
CyNode node = cyNetwork.addNode();
- AttributeUtil.copyAttributes(cyNetwork, cyNode, node);
+ AttributeUtil.copyAttributes(cyNetwork, cyNode, cyNetwork,
node);
Point2D.Double point = cyNodes.get(cyNode);
View<CyNode> nv = view.getNodeView(node);
Modified:
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/mapping/MapCPathToCytoscape.java
===================================================================
---
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/mapping/MapCPathToCytoscape.java
2012-06-11 18:27:38 UTC (rev 29526)
+++
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/mapping/MapCPathToCytoscape.java
2012-06-11 20:40:49 UTC (rev 29527)
@@ -42,6 +42,8 @@
import org.cytoscape.cpath2.internal.util.NetworkMergeUtil;
import org.cytoscape.cpath2.internal.view.model.NetworkWrapper;
import org.cytoscape.cpath2.internal.web_service.CPathProperties;
+import org.cytoscape.work.Task;
+import org.cytoscape.work.TaskIterator;
/**
* This class listens for requests from cPath instance
@@ -105,16 +107,21 @@
int downloadMode = cPathProperties.getDownloadMode();
cPathProperties.setDownloadMode(CPathProperties.DOWNLOAD_FULL_BIOPAX);
NetworkMergeUtil mergeUtil = factory.getNetworkMergeUtil();
+ Task task = null;
if (mergeUtil.mergeNetworksExist()) {
NetworkWrapper networkWrapper =
mergeUtil.promptForNetworkToMerge();
if (networkWrapper != null && networkWrapper.getNetwork() != null)
{
- factory.createNetworkUtil(cpathRequest,
networkWrapper.getNetwork(), true).start();
+ task = factory.createNetworkUtil(cpathRequest,
networkWrapper.getNetwork(), true);
} else {
- factory.createNetworkUtil(cpathRequest, null, false).start();
+ task = factory.createNetworkUtil(cpathRequest, null, false);
}
} else {
- factory.createNetworkUtil(cpathRequest, null, false).start();
+ task = factory.createNetworkUtil(cpathRequest, null, false);
}
+
+ TaskIterator iterator = new TaskIterator(task);
+ factory.getTaskManager().execute(iterator);
+
cPathProperties.setDownloadMode(downloadMode);
}
}
Modified:
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/plugin/CPathPlugIn2.java
===================================================================
---
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/plugin/CPathPlugIn2.java
2012-06-11 18:27:38 UTC (rev 29526)
+++
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/plugin/CPathPlugIn2.java
2012-06-11 20:40:49 UTC (rev 29527)
@@ -72,10 +72,6 @@
// create our http server and start its thread
new HTTPServer(HTTPServer.DEFAULT_PORT,
factory.createMapCPathToCytoscape(), debug).start();
-
- // Register Web Service
-// // TODO: Wire this up with OSGi
-//
WebServiceClientManager.registerClient(CytoscapeCPathWebService.getClient());
}
private void initProperties() throws IOException {
Modified:
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/ExecuteGetRecordByCPathId.java
===================================================================
---
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/ExecuteGetRecordByCPathId.java
2012-06-11 18:27:38 UTC (rev 29526)
+++
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/ExecuteGetRecordByCPathId.java
2012-06-11 20:40:49 UTC (rev 29527)
@@ -6,13 +6,13 @@
import java.io.IOException;
import java.io.InputStream;
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;
-import javax.swing.JOptionPane;
import javax.swing.SwingUtilities;
import org.biopax.paxtools.controller.ModelUtils;
@@ -171,6 +171,9 @@
cPathFactory.getCyNetworkManager().addNetwork(cyNetwork);
cPathFactory.getCyNetworkViewManager().addNetworkView(view);
+ // Add Links Back to cPath Instance
+ addLinksToCPathInstance(cyNetwork);
+
// Branch, based on download mode.
if (format == CPathResponseFormat.BINARY_SIF) {
postProcessingBinarySif(view, taskMonitor);
@@ -195,10 +198,7 @@
//
Cytoscape.firePropertyChange(Cytoscape.NETWORK_MODIFIED, null,
// ret_val);
// }
-
- // Add Links Back to cPath Instance
- addLinksToCPathInstance(cyNetwork);
-
+
if (taskMonitor != null) {
taskMonitor.setStatusMessage("Done");
taskMonitor.setProgress(1.0);
@@ -243,8 +243,7 @@
/**
* Execute Post-Processing on BINARY SIF Network.
*
- * @param cyNetwork
- * Cytoscape Network Object.
+ * @param cyNetwork Cytoscape Network Object.
*/
private void postProcessingBinarySif(final CyNetworkView view,
TaskMonitor taskMonitor) {
final CyNetwork cyNetwork = view.getModel();
@@ -262,9 +261,6 @@
if (mergedNetwork != null) {
mergeNetworks(cyNetwork, taskMonitor);
} else {
- // } else if (cyNetwork.getNodeCount() <
- //
Integer.parseInt(CytoscapeInit.getProperties()
- // .getProperty("viewThreshold"))) {
if (taskMonitor != null) {
taskMonitor.setStatusMessage("Creating
Network View...");
taskMonitor.setProgress(0);
@@ -283,19 +279,13 @@
}
});
}
- } else {
- // If we have requested a halt, and we have a network,
destroy it.
- // if (cyNetwork != null) {
- // Cytoscape.destroyNetwork(cyNetwork);
- // }
}
}
/**
* Execute Post-Processing on BioPAX Network.
*
- * @param cyNetwork
- * Cytoscape Network Object.
+ * @param cyNetwork Cytoscape Network Object.
*/
private void postProcessingBioPAX(final CyNetworkView view, TaskMonitor
taskMonitor) {
final CyNetwork cyNetwork = view.getModel();
@@ -343,12 +333,12 @@
}
private void mergeNetworks(CyNetwork cyNetwork, TaskMonitor
taskMonitor) {
- // TODO: Do we need to clone nodes/edges when merging?
taskMonitor.setStatusMessage("Merging Network...");
Map<String, CyNode> nodes = new HashMap<String, CyNode>();
for (CyNode node : cyNetwork.getNodeList()) {
- CyNode newNode = mergedNetwork.addNode();
- AttributeUtil.copyAttributes(mergedNetwork, node,
newNode);
+ CyNode newNode;
+ newNode = mergedNetwork.addNode();
+ AttributeUtil.copyAttributes(cyNetwork, node,
mergedNetwork, newNode);
String name =
cyNetwork.getRow(node).get(CyNetwork.NAME, String.class);
nodes.put(name, newNode);
}
@@ -359,15 +349,17 @@
CyNode source = nodes.get(sourceName);
CyNode target = nodes.get(targetName);
CyEdge newEdge = mergedNetwork.addEdge(source, target,
true);
- AttributeUtil.copyAttributes(mergedNetwork, edge,
newEdge);
+ AttributeUtil.copyAttributes(cyNetwork, edge,
mergedNetwork, newEdge);
edges.add(newEdge);
}
- // // Select this view
- // final CyNetworkView networkView =
- // viewManager.getNetworkView((mergedNetwork.getSUID());
- // Cytoscape.setCurrentNetwork(mergedNetwork.getIdentifier());
- //
Cytoscape.setCurrentNetworkView(mergedNetwork.getIdentifier());
+ // Select this view
+ Collection<CyNetworkView> networkViews =
+
cPathFactory.getCyNetworkViewManager().getNetworkViews(mergedNetwork);
+ if(!networkViews.isEmpty()) {
+
cPathFactory.getCyApplicationManager().setCurrentNetwork(mergedNetwork);
+
cPathFactory.getCyApplicationManager().setCurrentNetworkView(networkViews.iterator().next());
+ }
// Select only the new nodes
SelectUtil.unselectAllNodes(mergedNetwork);
@@ -376,14 +368,14 @@
SelectUtil.setSelectedEdgeState(mergedNetwork,edges, true);
// Delete the temp network.
- // Cytoscape.destroyNetwork(cyNetwork);
+ cPathFactory.getCyNetworkManager().destroyNetwork(cyNetwork);
// Apply Layout
- Object[] options = { "Yes", "No" };
- int n =
JOptionPane.showOptionDialog(cPathFactory.getCySwingApplication().getJFrame(),
- "Would you like to layout the modified
network?", "Adjust Layout?", JOptionPane.YES_NO_CANCEL_OPTION,
- JOptionPane.QUESTION_MESSAGE, null, options,
options[0]);
- if (n == 0) {
+// Object[] options = { "Yes", "No" };
+// int n =
JOptionPane.showOptionDialog(cPathFactory.getCySwingApplication().getJFrame(),
+// "Would you like to layout the modified
network?", "Adjust Layout?", JOptionPane.YES_NO_CANCEL_OPTION,
+// JOptionPane.QUESTION_MESSAGE, null, options,
options[0]);
+// if (n == 0) {
// SwingUtilities.invokeLater(new Runnable() {
// public void run() {
// LayoutUtil layoutAlgorithm = new LayoutUtil();
@@ -391,7 +383,7 @@
// networkView.fitContent();
// }
// });
- }
+// }
}
/**
Modified:
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/ExecutePhysicalEntitySearch.java
===================================================================
---
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/ExecutePhysicalEntitySearch.java
2012-06-11 18:27:38 UTC (rev 29526)
+++
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/ExecutePhysicalEntitySearch.java
2012-06-11 20:40:49 UTC (rev 29527)
@@ -4,7 +4,6 @@
import
org.cytoscape.cpath2.internal.schemas.search_response.ExtendedRecordType;
import
org.cytoscape.cpath2.internal.schemas.search_response.SearchResponseType;
-import
org.cytoscape.cpath2.internal.task.ExecutePhysicalEntitySearchTaskFactory.ResultHandler;
import org.cytoscape.cpath2.internal.web_service.CPathException;
import org.cytoscape.cpath2.internal.web_service.CPathProperties;
import org.cytoscape.cpath2.internal.web_service.CPathWebService;
@@ -18,7 +17,12 @@
* @author Ethan Cerami.
*/
public class ExecutePhysicalEntitySearch implements Task {
- private CPathWebService webApi;
+
+ public static interface ResultHandler {
+ void finished(int matchesFound) throws Exception;
+ }
+
+ private CPathWebService webApi;
private String keyword;
private int ncbiTaxonomyId;
private ResultHandler result;
Deleted:
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/ExecutePhysicalEntitySearchTaskFactory.java
===================================================================
---
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/ExecutePhysicalEntitySearchTaskFactory.java
2012-06-11 18:27:38 UTC (rev 29526)
+++
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/ExecutePhysicalEntitySearchTaskFactory.java
2012-06-11 20:40:49 UTC (rev 29527)
@@ -1,30 +0,0 @@
-package org.cytoscape.cpath2.internal.task;
-
-import org.cytoscape.cpath2.internal.web_service.CPathWebService;
-import org.cytoscape.work.AbstractTaskFactory;
-import org.cytoscape.work.TaskIterator;
-
-public class ExecutePhysicalEntitySearchTaskFactory extends
AbstractTaskFactory {
- private final CPathWebService webApi;
- private final String keyword;
- private final int ncbiTaxonomyId;
- private ExecutePhysicalEntitySearch task;
- private ResultHandler result;
-
- public ExecutePhysicalEntitySearchTaskFactory(CPathWebService webApi,
String keyword, int ncbiTaxonomyId, ResultHandler result) {
- this.webApi = webApi;
- this.keyword = keyword;
- this.ncbiTaxonomyId = ncbiTaxonomyId;
- this.result = result;
- }
-
- @Override
- public TaskIterator createTaskIterator() {
- task = new ExecutePhysicalEntitySearch(webApi, keyword,
ncbiTaxonomyId, result);
- return new TaskIterator(task);
- }
-
- public interface ResultHandler {
- void finished(int matchesFound) throws Exception;
- }
-}
Deleted:
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/GetParentInteractions.java
===================================================================
---
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/GetParentInteractions.java
2012-06-11 18:27:38 UTC (rev 29526)
+++
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/GetParentInteractions.java
2012-06-11 20:40:49 UTC (rev 29527)
@@ -1,82 +0,0 @@
-package org.cytoscape.cpath2.internal.task;
-
-import javax.swing.JDialog;
-
-import org.cytoscape.application.swing.CySwingApplication;
-import org.cytoscape.cpath2.internal.CPath2Factory;
-import
org.cytoscape.cpath2.internal.schemas.summary_response.SummaryResponseType;
-import org.cytoscape.cpath2.internal.view.InteractionBundlePanel;
-import org.cytoscape.cpath2.internal.view.model.InteractionBundleModel;
-import org.cytoscape.cpath2.internal.view.model.RecordList;
-import org.cytoscape.cpath2.internal.web_service.CPathException;
-import org.cytoscape.cpath2.internal.web_service.CPathWebService;
-import org.cytoscape.cpath2.internal.web_service.CPathWebServiceImpl;
-import org.cytoscape.cpath2.internal.web_service.EmptySetException;
-import org.cytoscape.model.CyNetwork;
-import org.cytoscape.model.CyNode;
-import org.cytoscape.work.Task;
-import org.cytoscape.work.TaskMonitor;
-
-// TODO seems, in practice, this class is never called!
-public class GetParentInteractions implements Task {
- private long cpathId;
- private CPathWebService webApi = CPathWebServiceImpl.getInstance();
- private InteractionBundleModel interactionBundleModel;
- private final CyNetwork network;
- private final CyNode node;
- private final CPath2Factory factory;
-
- public GetParentInteractions (CyNetwork network, CyNode node,
CPath2Factory factory) {
- // TODO: Debug, investigate this cPath1 (Pathway Commons, BioPAX Level2
webservice specific code...)
- String cpathId = network.getRow(node).get(CyNetwork.NAME,
String.class); // TODO actually, - must be from "shared name" virtual attr.
column
-// this.cpathId = node.getSUID();
- this.cpathId = Integer.parseInt(cpathId); //well, well
- this.node = node;
- this.network = network;
- this.factory = factory;
- }
-
- @Override
- public void cancel() {
- webApi.abort();
- }
-
- public void run(TaskMonitor taskMonitor) throws Exception {
- taskMonitor.setTitle("Getting neighbors...");
- try {
- taskMonitor.setStatusMessage("Retrieving neighborhood summary.");
- SummaryResponseType response = webApi.getParentSummaries(cpathId,
taskMonitor);
- RecordList recordList = new RecordList(response);
- interactionBundleModel = new InteractionBundleModel();
- interactionBundleModel.setRecordList(recordList);
- interactionBundleModel.setPhysicalEntityName("Network
Neighborhood");
-
- CySwingApplication application = factory.getCySwingApplication();
- JDialog dialog = new JDialog(application.getJFrame());
-
- String nodeLabel = network.getRow(node).get(CyNetwork.NAME,
String.class);
- if (nodeLabel != null) {
- dialog.setTitle(nodeLabel);
- } else {
- dialog.setTitle("Neighborhood");
- }
- InteractionBundlePanel interactionBundlePanel =
factory.createInteractionBundlePanel(interactionBundleModel, network, dialog);
- dialog.getContentPane().add(interactionBundlePanel);
- interactionBundleModel.setRecordList(recordList);
- interactionBundlePanel.expandAllNodes();
- dialog.pack();
- dialog.setLocationRelativeTo(application.getJFrame());
- dialog.setVisible(true);
- } catch (CPathException e) {
- if (e.getErrorCode() != CPathException.ERROR_CANCELED_BY_USER) {
- throw e;
- }
- } catch (EmptySetException e) {
- throw new Exception("No neighbors found for selected node.", e);
- }
- }
-
- public InteractionBundleModel getInteractionBundle() {
- return this.interactionBundleModel;
- }
-}
Deleted:
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/GetParentInteractionsTaskFactory.java
===================================================================
---
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/GetParentInteractionsTaskFactory.java
2012-06-11 18:27:38 UTC (rev 29526)
+++
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/GetParentInteractionsTaskFactory.java
2012-06-11 20:40:49 UTC (rev 29527)
@@ -1,25 +0,0 @@
-package org.cytoscape.cpath2.internal.task;
-
-import org.cytoscape.cpath2.internal.CPath2Factory;
-import org.cytoscape.model.CyNetwork;
-import org.cytoscape.model.CyNode;
-import org.cytoscape.task.AbstractNodeViewTaskFactory;
-import org.cytoscape.view.model.CyNetworkView;
-import org.cytoscape.view.model.View;
-import org.cytoscape.work.TaskIterator;
-
-// TODO: Wire this in OSGi; this class is never called... (remove?)
-public class GetParentInteractionsTaskFactory extends
AbstractNodeViewTaskFactory {
- private final CPath2Factory factory;
-
- public GetParentInteractionsTaskFactory(CPath2Factory factory) {
- this.factory = factory;
- }
-
- @Override
- public TaskIterator createTaskIterator(View<CyNode> nodeView,
CyNetworkView netView) {
- CyNetwork network = netView.getModel();
- CyNode node = nodeView.getModel();
- return new TaskIterator(new GetParentInteractions(network,
node, factory));
- }
-}
Modified:
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/LoadNetworkFromUrlTask.java
===================================================================
---
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/LoadNetworkFromUrlTask.java
2012-06-11 18:27:38 UTC (rev 29526)
+++
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/LoadNetworkFromUrlTask.java
2012-06-11 20:40:49 UTC (rev 29527)
@@ -58,6 +58,8 @@
* Task to load a new network from a URL.
*
* Modified version of the original LoadNetworkTask from cytoscape code.
+ *
+ * TODO
*/
public class LoadNetworkFromUrlTask implements Task {
private final URL url;
Deleted:
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/LoadNetworkFromUrlTaskFactory.java
===================================================================
---
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/LoadNetworkFromUrlTaskFactory.java
2012-06-11 18:27:38 UTC (rev 29526)
+++
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/LoadNetworkFromUrlTaskFactory.java
2012-06-11 20:40:49 UTC (rev 29527)
@@ -1,24 +0,0 @@
-package org.cytoscape.cpath2.internal.task;
-
-import java.net.URL;
-
-import org.cytoscape.cpath2.internal.CPath2Factory;
-import org.cytoscape.work.AbstractTaskFactory;
-import org.cytoscape.work.TaskIterator;
-
-public class LoadNetworkFromUrlTaskFactory extends AbstractTaskFactory {
-
- private URL url;
- private CPath2Factory factory;
-
- public LoadNetworkFromUrlTaskFactory(URL url, CPath2Factory factory) {
- this.url = url;
- this.factory = factory;
- }
-
- @Override
- public TaskIterator createTaskIterator() {
- return new TaskIterator(new LoadNetworkFromUrlTask(url,
factory));
- }
-
-}
Modified:
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/MergeNetworkTask.java
===================================================================
---
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/MergeNetworkTask.java
2012-06-11 18:27:38 UTC (rev 29526)
+++
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/task/MergeNetworkTask.java
2012-06-11 20:40:49 UTC (rev 29527)
@@ -92,9 +92,7 @@
public void cancel() {
}
- /**
- * Our implementation of Task.run().
- */
+
@Override
public void run(TaskMonitor taskMonitor) throws Exception {
// read the network from cpath instance
@@ -117,10 +115,10 @@
Set<CyEdge> newEdges = new HashSet<CyEdge>();
// add new nodes and edges to existing network
- // tbd: worry about networks that exceed # node/edge threshold
+ // TODO tbd: worry about networks that exceed # node/edge threshold
for (CyNode node : network.getNodeList()) {
CyNode mergedNode = mergedNetwork.addNode();
- AttributeUtil.copyAttributes(mergedNetwork, node, mergedNode);
+ AttributeUtil.copyAttributes(network, node, mergedNetwork,
mergedNode);
String name = network.getRow(mergedNode).get(CyNetwork.NAME,
String.class);
newNodes.put(name, mergedNode);
}
@@ -130,7 +128,7 @@
CyNode source = newNodes.get(sourceName);
CyNode target = newNodes.get(targetName);
CyEdge mergedEdge = mergedNetwork.addEdge(source, target, true);
- AttributeUtil.copyAttributes(mergedNetwork, edge, mergedEdge);
+ AttributeUtil.copyAttributes(network, edge, mergedNetwork,
mergedEdge);
newEdges.add(mergedEdge);
}
Modified:
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/util/AttributeUtil.java
===================================================================
---
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/util/AttributeUtil.java
2012-06-11 18:27:38 UTC (rev 29526)
+++
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/util/AttributeUtil.java
2012-06-11 20:40:49 UTC (rev 29527)
@@ -12,37 +12,46 @@
public class AttributeUtil {
public static void set(CyNetwork network, CyIdentifiable entry, String
name, Object value, Class<?> type) {
- set(network, entry, null, name, value, type);
+ set(network, entry, CyNetwork.DEFAULT_ATTRS, name, value, type);
}
- public static void copyAttributes(CyNetwork network, CyIdentifiable
source, CyIdentifiable target) {
- CyRow sourceRow = network.getRow(source);
+ public static void copyAttributes(CyNetwork srcNetwork, CyIdentifiable
source, CyNetwork tgtNetwork, CyIdentifiable target) {
+ CyRow sourceRow = srcNetwork.getRow(source);
for (Entry<String, Object> entry :
sourceRow.getAllValues().entrySet()) {
String key = entry.getKey();
Object value = entry.getValue();
CyColumn column = sourceRow.getTable().getColumn(key);
- Class<?> type;
- if (value instanceof List) {
- type = column.getListElementType();
- } else {
- type = column.getType();
+ if (!column.getVirtualColumnInfo().isVirtual()) {
//skip virtual cols
+ Class<?> type;
+ if (value instanceof List) {
+ type = column.getListElementType();
+ } else {
+ type = column.getType();
+ }
+
+ set(tgtNetwork, target, key, value, type);
}
- set(network, target, key, value, type);
}
}
public static void set(CyNetwork network, CyIdentifiable entry, String
tableName, String name, Object value, Class<?> type) {
- CyRow row = (tableName==null) ? network.getRow(entry) :
network.getRow(entry,tableName);
+ CyRow row = network.getRow(entry, tableName);
CyTable table = row.getTable();
CyColumn column = table.getColumn(name);
- if (column == null) {
- if (value instanceof List) {
- table.createListColumn(name, type, false);
- } else {
- table.createColumn(name, type, false);
+
+ if(column != null && column.getVirtualColumnInfo().isVirtual())
+ return; //skip TODO ?
+
+ if (value != null) {
+ if (column == null) {
+ if (value instanceof List) {
+ table.createListColumn(name, type,
false);
+ } else {
+ table.createColumn(name, type, false);
+ }
}
+ row.set(name, value);
}
- row.set(name, value);
}
}
Modified:
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/util/NetworkUtil.java
===================================================================
---
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/util/NetworkUtil.java
2012-06-11 18:27:38 UTC (rev 29526)
+++
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/util/NetworkUtil.java
2012-06-11 20:40:49 UTC (rev 29527)
@@ -38,17 +38,20 @@
import java.util.Collection;
import org.cytoscape.cpath2.internal.CPath2Factory;
-import org.cytoscape.cpath2.internal.task.LoadNetworkFromUrlTaskFactory;
+import org.cytoscape.cpath2.internal.task.LoadNetworkFromUrlTask;
import org.cytoscape.model.CyNetwork;
import org.cytoscape.view.model.CyNetworkView;
+import org.cytoscape.work.Task;
import org.cytoscape.work.TaskFactory;
+import org.cytoscape.work.TaskIterator;
+import org.cytoscape.work.TaskMonitor;
/**
* This is a network utilities class.
*
- * @author Benjamin Gross.
+ * @author Benjamin Gross; refactored by rodche
*/
-public class NetworkUtil extends Thread {
+public class NetworkUtil implements Task {
/**
* Stores web services url
@@ -113,8 +116,8 @@
/**
* Our implementation of run.
*/
- public void run() {
-
+ @Override
+ public void run(TaskMonitor taskMonitor) throws Exception {
try {
URL cpathURL = new URL(cPathRequest);
@@ -131,8 +134,8 @@
if (networkTitle != null && networkTitle.length() > 0) {
System.setProperty("biopax.network_view_title",
networkTitle);
}
- LoadNetworkFromUrlTaskFactory taskFactory = new
LoadNetworkFromUrlTaskFactory(cpathURL, factory);
-
factory.getTaskManager().execute(taskFactory.createTaskIterator());
+ TaskIterator iterator = new TaskIterator(new
LoadNetworkFromUrlTask(cpathURL, factory));
+ factory.getTaskManager().execute(iterator);
postProcess(factory.getCyApplicationManager().getCurrentNetwork(), false);
}
}
@@ -196,26 +199,9 @@
cpathRequest.substring(0, indexOfArg) +
cpathRequest.substring(endIndexOfValue);
- // outta here
return value;
}
-// TODO: Port this?
-// /**
-// * Method to setup cytoscape task
-// */
-// private JTaskConfig setupTask() {
-//
-// // configure JTask Dialog Pop-Up Box
-// JTaskConfig jTaskConfig = new JTaskConfig();
-// jTaskConfig.setOwner(Cytoscape.getDesktop());
-// jTaskConfig.displayStatus(true);
-// jTaskConfig.setAutoDispose(true);
-//
-// // outta here
-// return jTaskConfig;
-// }
-
/**
* Method for any post processing of recently loaded network.
*
@@ -254,4 +240,9 @@
// set focus current
factory.getCyApplicationManager().setCurrentNetworkView(view);
}
+
+
+ @Override
+ public void cancel() {
+ }
}
Modified:
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/view/SearchBoxPanel.java
===================================================================
---
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/view/SearchBoxPanel.java
2012-06-11 18:27:38 UTC (rev 29526)
+++
core3/impl/trunk/cpath2-impl/src/main/java/org/cytoscape/cpath2/internal/view/SearchBoxPanel.java
2012-06-11 20:40:49 UTC (rev 29527)
@@ -29,11 +29,12 @@
import javax.swing.event.HyperlinkListener;
import org.cytoscape.cpath2.internal.CPath2Factory;
-import
org.cytoscape.cpath2.internal.task.ExecutePhysicalEntitySearchTaskFactory;
-import
org.cytoscape.cpath2.internal.task.ExecutePhysicalEntitySearchTaskFactory.ResultHandler;
+import org.cytoscape.cpath2.internal.task.ExecutePhysicalEntitySearch;
+import
org.cytoscape.cpath2.internal.task.ExecutePhysicalEntitySearch.ResultHandler;
import org.cytoscape.cpath2.internal.view.model.Organism;
import org.cytoscape.cpath2.internal.web_service.CPathProperties;
import org.cytoscape.cpath2.internal.web_service.CPathWebService;
+import org.cytoscape.work.TaskIterator;
/**
* Search Box Panel.
@@ -203,9 +204,9 @@
}
}
};
- ExecutePhysicalEntitySearchTaskFactory search = new
ExecutePhysicalEntitySearchTaskFactory
- (webApi, keyword.trim(), ncbiTaxonomyId, handler);
- factory.getTaskManager().execute(search.createTaskIterator());
+
+ TaskIterator iterator = new TaskIterator(new
ExecutePhysicalEntitySearch(webApi, keyword.trim(), ncbiTaxonomyId, handler));
+ factory.getTaskManager().execute(iterator);
}
}
--
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.