From 28dcd2521294d12a02adb4ae5230eeb4f087de68 Mon Sep 17 00:00:00 2001 From: unknown <lukas.ettel@uni-duesseldorf.de> Date: Tue, 4 Feb 2020 12:19:16 +0100 Subject: [PATCH] App reads now userinput of clusterCount and default insertion- and deletioncost --- .../java/de/hhu/ba/yoshikoWrapper/CyActivator.java | 2 ++ .../java/de/hhu/ba/yoshikoWrapper/core/CyCore.java | 2 ++ .../yoshikoWrapper/swing/components/MainPanel.java | 2 +- .../taskFactories/CommandTaskFactory.java | 3 ++- .../hhu/ba/yoshikoWrapper/tasks/AlgorithmTask.java | 13 +++++++++---- .../yoshikoAlgorithm/GraphTranslator.java | 13 +++++++++++++ .../yoshikoAlgorithm/YoshikoAlgoritmController.java | 5 ++--- 7 files changed, 31 insertions(+), 9 deletions(-) diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/CyActivator.java b/src/main/java/de/hhu/ba/yoshikoWrapper/CyActivator.java index d1862a6..6af2730 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/CyActivator.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/CyActivator.java @@ -127,5 +127,7 @@ public class CyActivator extends AbstractCyActivator { MainPanel mainPanel = new MainPanel(); registerService(context,mainPanel,CytoPanelComponent.class, new Properties()); + CyCore.mainPanel = mainPanel; + } } \ No newline at end of file diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/core/CyCore.java b/src/main/java/de/hhu/ba/yoshikoWrapper/core/CyCore.java index aee7b04..e050180 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/core/CyCore.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/core/CyCore.java @@ -23,6 +23,7 @@ package de.hhu.ba.yoshikoWrapper.core; import java.util.concurrent.CountDownLatch; +import de.hhu.ba.yoshikoWrapper.swing.components.MainPanel; import org.cytoscape.application.CyApplicationManager; import org.cytoscape.application.swing.CySwingApplication; import org.cytoscape.command.CommandExecutorTaskFactory; @@ -70,6 +71,7 @@ public class CyCore { public static CommandExecutorTaskFactory commandExecutorTaskFactory; // + public static MainPanel mainPanel; //Convenience // public static String getConfig(String key) { // return cm.getProperties().getProperty(key); diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/MainPanel.java b/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/MainPanel.java index 8d2ddfb..df98a8c 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/MainPanel.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/MainPanel.java @@ -306,7 +306,7 @@ public class MainPanel extends JPanel implements CytoPanelComponent { * Fetches all the parameters from the various swing components and packs them into a neat abstract wrapper class * @return The currently selected parameter wrapped in a ParameterSet */ - private ParameterSet fetchParameters(CyNetwork net) { + public ParameterSet fetchParameters(CyNetwork net) { ParameterSet ret = new ParameterSet(); ret.net = net; ret.timeLimit = opModePanel.getTimeLimit(); diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/taskFactories/CommandTaskFactory.java b/src/main/java/de/hhu/ba/yoshikoWrapper/taskFactories/CommandTaskFactory.java index ebd9500..4d3135c 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/taskFactories/CommandTaskFactory.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/taskFactories/CommandTaskFactory.java @@ -1,5 +1,6 @@ package de.hhu.ba.yoshikoWrapper.taskFactories; +import de.hhu.ba.yoshikoWrapper.core.CyCore; import org.cytoscape.work.TaskFactory; import org.cytoscape.work.TaskIterator; @@ -46,7 +47,7 @@ public class CommandTaskFactory implements TaskFactory{ return new TaskIterator( new AlgorithmTask( null, - new ParameterSet() + CyCore.mainPanel.fetchParameters(CyCore.cy.getCurrentNetwork()) ) ); } diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/AlgorithmTask.java b/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/AlgorithmTask.java index daedf67..64712e1 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/AlgorithmTask.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/AlgorithmTask.java @@ -22,16 +22,25 @@ package de.hhu.ba.yoshikoWrapper.tasks; import java.awt.Window; +import java.util.Properties; +import de.hhu.ba.yoshikoWrapper.swing.components.MainPanel; import de.hhu.ba.yoshikoWrapper.yoshikoAlgorithm.YoshikoAlgoritmController; +import org.cytoscape.application.swing.CytoPanel; +import org.cytoscape.application.swing.CytoPanelName; import org.cytoscape.model.CyNetwork; import org.cytoscape.model.CyNode; import org.cytoscape.model.CyTable; +import org.cytoscape.service.util.CyServiceRegistrar; +import org.cytoscape.view.layout.CyLayoutAlgorithm; import org.cytoscape.work.AbstractTask; import org.cytoscape.work.ContainsTunables; import org.cytoscape.work.ObservableTask; import org.cytoscape.work.TaskMonitor; import org.cytoscape.work.TunableValidator; +import org.osgi.framework.Bundle; +import org.osgi.framework.BundleContext; +import org.osgi.framework.ServiceReference; import org.slf4j.Logger; import de.hhu.ba.yoshikoWrapper.core.CyCore; @@ -83,8 +92,6 @@ public class AlgorithmTask extends AbstractTask implements ObservableTask, Tunab @Override public void run(TaskMonitor taskMonitor) throws Exception { - CyNetwork networkToBeProcessed = CyCore.cy.getCurrentNetwork(); - //TODO: Improve setProgress values taskMonitor.setTitle(LocalizationManager.get("yoshTask")); @@ -99,8 +106,6 @@ public class AlgorithmTask extends AbstractTask implements ObservableTask, Tunab YoshikoAlgoritmController yoshikoAlgoritmController = new YoshikoAlgoritmController(parameterSet); yoshikoAlgoritmController.controllAlgorithm(); - CyTable table = networkToBeProcessed.getDefaultEdgeTable(); - /* //Create a node map to identify nodes and eges in the solution diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/yoshikoAlgorithm/GraphTranslator.java b/src/main/java/de/hhu/ba/yoshikoWrapper/yoshikoAlgorithm/GraphTranslator.java index 1962514..e8f99a5 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/yoshikoAlgorithm/GraphTranslator.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/yoshikoAlgorithm/GraphTranslator.java @@ -3,9 +3,12 @@ package de.hhu.ba.yoshikoWrapper.yoshikoAlgorithm; import de.hhu.ba.yoshikoWrapper.core.CyCore; import de.hhu.ba.yoshikoWrapper.core.ParameterSet; import de.hhu.ba.yoshikoWrapper.cytoUtil.NodeMap; +import de.hhu.ba.yoshikoWrapper.cytoUtil.StyleManager; import org.cytoscape.model.*; import org.cytoscape.model.subnetwork.CyRootNetwork; import org.cytoscape.model.subnetwork.CySubNetwork; +import org.cytoscape.view.layout.CyLayoutAlgorithm; +import org.cytoscape.view.model.CyNetworkView; import java.util.*; @@ -104,6 +107,8 @@ public final class GraphTranslator { addNodesToResultNetwork(resultNetwork); addEdgesToResultNetwork(clusters, resultNetwork); + + // createNetworkView(resultNetwork); } private CySubNetwork createNewGaph(){ @@ -145,4 +150,12 @@ public final class GraphTranslator { resultNetwork.addEdge(network.getEdge(yoshikoEdge.suid)); } } + + private CyNetworkView createNetworkView(CyNetwork resultNetwork){ + + CyNetworkView view = CyCore.networkViewFactory.createNetworkView(resultNetwork); + + CyCore.networkViewManager.addNetworkView(view,false); + return view; + } } diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/yoshikoAlgorithm/YoshikoAlgoritmController.java b/src/main/java/de/hhu/ba/yoshikoWrapper/yoshikoAlgorithm/YoshikoAlgoritmController.java index 12c2a44..8bec067 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/yoshikoAlgorithm/YoshikoAlgoritmController.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/yoshikoAlgorithm/YoshikoAlgoritmController.java @@ -7,13 +7,14 @@ import java.util.List; public class YoshikoAlgoritmController { - private int k = 19; + private int k; private CyNetwork network; private ParameterSet parameterSet; public YoshikoAlgoritmController(ParameterSet parameterSet){ this.parameterSet = parameterSet; this.network = parameterSet.net; + this.k = parameterSet.clusterCount; } public void controllAlgorithm(){ @@ -28,8 +29,6 @@ public class YoshikoAlgoritmController { clusters = clusteringAlgorithm.runClusteringAlgorithm(); translator.makeCytoscapeGraph(clusters); - - System.out.println("asdadasd"); } -- GitLab