/
CyActivator.java
executable file
·77 lines (57 loc) · 3.39 KB
/
CyActivator.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
package uk.ac.ebi.cytocopter.internal;
import java.io.InputStream;
import java.util.Properties;
import org.cytoscape.application.swing.CyAction;
import org.cytoscape.application.swing.CytoPanelComponent;
import org.cytoscape.service.util.AbstractCyActivator;
import org.cytoscape.service.util.CyServiceRegistrar;
import org.cytoscape.task.read.LoadVizmapFileTaskFactory;
import org.cytoscape.work.ServiceProperties;
import org.cytoscape.work.TaskFactory;
import org.osgi.framework.BundleContext;
import uk.ac.ebi.cytocopter.internal.cellnoptr.enums.CytocopterCommandsEnum;
//import uk.ac.ebi.cytocopter.internal.cellnoptr.tasks.ConfigureCellnoptrTaskFactory;
import uk.ac.ebi.cytocopter.internal.cellnoptr.tasks.OptimiseTaskFactory;
import uk.ac.ebi.cytocopter.internal.cellnoptr.tasks.PreprocessTaskFactory;
import uk.ac.ebi.cytocopter.internal.cellnoptr.tasks.SetNodeTypeTaskFactory;
//import uk.ac.ebi.cytocopter.internal.ui.menus.SbmlQualExportMenu;
//import uk.ac.ebi.cytocopter.internal.ui.menus.SbmlQualImportMenu;
import uk.ac.ebi.cytocopter.internal.ui.panels.ControlPanel;
import uk.ac.ebi.cytocopter.internal.ui.panels.LogPanel;
import uk.ac.ebi.cytocopter.internal.ui.panels.ResultsPanel;
public class CyActivator extends AbstractCyActivator {
public BundleContext bundleContext;
public CyServiceRegistrar cyServiceRegistrar;
public static final String visualStyleFile = "/CytocopterVisualStyle.xml";
public static final String visualStyleName = "Cytocopter";
@Override
public void start(BundleContext bundleContext) throws Exception {
this.bundleContext = bundleContext;
cyServiceRegistrar = getService(bundleContext, CyServiceRegistrar.class);
registerPanels();
registerCytocopterCommands();
loadVisualStyle();
}
private void registerPanels () {
registerService(bundleContext, new ControlPanel(cyServiceRegistrar), CytoPanelComponent.class, new Properties());
registerService(bundleContext, new ResultsPanel(cyServiceRegistrar), CytoPanelComponent.class, new Properties());
registerService(bundleContext, new LogPanel(cyServiceRegistrar), CytoPanelComponent.class, new Properties());
}
private void registerCytocopterCommands () {
Properties props = new Properties();
props.setProperty(ServiceProperties.COMMAND_NAMESPACE, CytocopterCommandsEnum.CYTOCOPTER_NAME_SPACE);
// props.setProperty(ServiceProperties.COMMAND, CytocopterCommandsEnum.CONFIGURE.getName());
// registerService(bundleContext, new ConfigureCellnoptrTaskFactory(cyServiceRegistrar, false), TaskFactory.class, props);
props.setProperty(ServiceProperties.COMMAND, CytocopterCommandsEnum.PREPROCESS.getName());
registerService(bundleContext, new PreprocessTaskFactory(cyServiceRegistrar, false, false, true), TaskFactory.class, props);
props.setProperty(ServiceProperties.COMMAND, CytocopterCommandsEnum.OPTIMISE.getName());
registerService(bundleContext, new OptimiseTaskFactory(cyServiceRegistrar, false), TaskFactory.class, props);
props.setProperty(ServiceProperties.COMMAND, CytocopterCommandsEnum.NODETYPE.getName());
registerService(bundleContext, new SetNodeTypeTaskFactory(cyServiceRegistrar), TaskFactory.class, props);
}
private void loadVisualStyle () {
InputStream in = getClass().getResourceAsStream(visualStyleFile);
LoadVizmapFileTaskFactory loadVizmapFileTaskFactory = cyServiceRegistrar.getService(LoadVizmapFileTaskFactory.class);
loadVizmapFileTaskFactory.loadStyles(in);
}
}