Changes for 2.x fda version

FDA-95
Fixed command line start scripts for new Java entry points
This commit is contained in:
2013-12-17 09:41:54 +01:00
parent c3ccfb3312
commit 6149f95eed
18 changed files with 104 additions and 75 deletions
+1 -1
View File
@@ -5,7 +5,7 @@
<parent>
<groupId>ch.psi</groupId>
<artifactId>fda.ui</artifactId>
<version>1.1.40</version>
<version>2.0.1</version>
</parent>
<artifactId>application</artifactId>
+1 -1
View File
@@ -37,4 +37,4 @@ do
done
# Execute java
java -Xmx1024m -XX:MaxPermSize=128m -cp $CLASSPATH -Dch.psi.fda.home=${APPLICATION_HOME} -Djava.util.logging.config.file=${APPLICATION_HOME}/config/logging.properties $VM_ARGUMENTS ch.psi.fda.co.ConversionEngine $ARGUMENTS
java -Xmx1024m -XX:MaxPermSize=128m -cp $CLASSPATH -Dch.psi.fda.home=${APPLICATION_HOME} -Djava.util.logging.config.file=${APPLICATION_HOME}/config/logging.properties $VM_ARGUMENTS ch.psi.fda.ConversionMain $ARGUMENTS
+1 -1
View File
@@ -37,4 +37,4 @@ do
done
# Execute java
java -Xmx1024m -XX:MaxPermSize=128m -Dch.psi.fda.home=${APPLICATION_HOME} $VM_ARGUMENTS -cp $CLASSPATH ch.psi.fda.aq.AcquisitionMain $ARGUMENTS
java -Xmx1024m -XX:MaxPermSize=128m -Dch.psi.fda.home=${APPLICATION_HOME} $VM_ARGUMENTS -cp $CLASSPATH ch.psi.fda.AcquisitionMain $ARGUMENTS
+1 -1
View File
@@ -37,4 +37,4 @@ do
done
# Execute java
java -Xmx1024m -XX:MaxPermSize=128m -cp $CLASSPATH -Dch.psi.fda.home=${APPLICATION_HOME} -Djava.util.logging.config.file=${APPLICATION_HOME}/config/logging.properties $VM_ARGUMENTS ch.psi.fda.vis.VisualizationEngine $ARGUMENTS
java -Xmx1024m -XX:MaxPermSize=128m -cp $CLASSPATH -Dch.psi.fda.home=${APPLICATION_HOME} -Djava.util.logging.config.file=${APPLICATION_HOME}/config/logging.properties $VM_ARGUMENTS ch.psi.fda.VisualizationMain $ARGUMENTS
+1 -1
View File
@@ -5,7 +5,7 @@
<parent>
<groupId>ch.psi</groupId>
<artifactId>fda.ui</artifactId>
<version>1.1.40</version>
<version>2.0.1</version>
</parent>
<artifactId>branding</artifactId>
@@ -1,2 +1,2 @@
CTL_MainWindow_Title=FDA 1.1.40
CTL_MainWindow_Title_No_Project=FDA 1.1.40
CTL_MainWindow_Title=FDA 2.0.1
CTL_MainWindow_Title_No_Project=FDA 2.0.1
+1 -1
View File
@@ -4,7 +4,7 @@
<parent>
<artifactId>fda.ui</artifactId>
<groupId>ch.psi</groupId>
<version>1.1.40</version>
<version>2.0.1</version>
</parent>
<artifactId>fda.ui.cdump</artifactId>
+1 -1
View File
@@ -4,7 +4,7 @@
<parent>
<artifactId>fda.ui</artifactId>
<groupId>ch.psi</groupId>
<version>1.1.40</version>
<version>2.0.1</version>
</parent>
<artifactId>fda.ui.ce</artifactId>
+1 -1
View File
@@ -4,7 +4,7 @@
<parent>
<artifactId>fda.ui</artifactId>
<groupId>ch.psi</groupId>
<version>1.1.40</version>
<version>2.0.1</version>
</parent>
<artifactId>fda.ui.cm</artifactId>
+3 -2
View File
@@ -4,7 +4,7 @@
<parent>
<artifactId>fda.ui</artifactId>
<groupId>ch.psi</groupId>
<version>1.1.40</version>
<version>2.0.1</version>
</parent>
<artifactId>fda.ui.ee</artifactId>
@@ -87,7 +87,7 @@
<dependency>
<groupId>ch.psi</groupId>
<artifactId>fda</artifactId>
<version>1.1.40</version>
<version>2.0.1</version>
<type>jar</type>
</dependency>
</dependencies>
@@ -103,6 +103,7 @@
<publicPackage>ch.psi.fda.model</publicPackage>
<publicPackage>ch.psi.fda.model.v1</publicPackage>
<publicPackage>ch.psi.fda.ui.ee.api</publicPackage>
<publicPackage>org.xml.sax</publicPackage>
</publicPackages>
</configuration>
</plugin>
@@ -0,0 +1,30 @@
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package ch.psi.fda.ui.ee;
import ch.psi.fda.aq.AcquisitionConfiguration;
/**
*
* @author ebner
*/
public class Configuration {
private static final Configuration instance = new Configuration();
private final AcquisitionConfiguration configuration;
private Configuration(){
configuration = new AcquisitionConfiguration();
}
public static Configuration getInstance(){
return instance;
}
public AcquisitionConfiguration getConfiguration(){
return configuration;
}
}
@@ -18,9 +18,14 @@
package ch.psi.fda.ui.ee;
import ch.psi.fda.aq.Acquisition;
import ch.psi.fda.core.messages.DataQueue;
import ch.psi.fda.aq.VisualizationMapper;
import ch.psi.fda.model.v1.Configuration;
import ch.psi.fda.visualizer.Visualizer;
import ch.psi.jcae.impl.DefaultChannelService;
import com.google.common.eventbus.AsyncEventBus;
import com.google.common.eventbus.EventBus;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.netbeans.api.progress.ProgressHandle;
@@ -78,6 +83,7 @@ public class ExecutionExecutable implements Runnable {
Visualizer visualizer = null;
ExecutorService executor=null;
try {
// Read in base configuration
// AcquisitionEngineConfiguration configuration = AcquisitionEngineConfiguration.getInstance();
@@ -86,14 +92,16 @@ public class ExecutionExecutable implements Runnable {
handle.progress(25);
acquisition = new Acquisition();
DataQueue vdq = acquisition.initalize(c, true);
executor = Executors.newSingleThreadExecutor();
EventBus ebus = new AsyncEventBus(executor);
acquisition = new Acquisition(new DefaultChannelService(), ch.psi.fda.ui.ee.Configuration.getInstance().getConfiguration());
acquisition.initalize(ebus, c);
visualizer = new Visualizer(vdq, c.getVisualization());
visualizer = new Visualizer(VisualizationMapper.mapVisualizations(c.getVisualization()));
// Configure visualizer that visualizing Thread terminates automatically
// visualizer.setAutoTerminate(true);
// visualizer.setAutoTerminateAt(c.getNumberOfExecution());
visualizer.setTerminateAtEOS(true);
// visualizer.setTerminateAtEOS(true);
if(c.getScan() != null && c.getScan().getCdimension()!=null){
// If there is a continuous dimension only update the plot a the end of a line.
// Improvement of performance
@@ -101,6 +109,7 @@ public class ExecutionExecutable implements Runnable {
visualizer.setUpdateAtStreamDelimiter(true);
visualizer.setUpdateAtEndOfStream(true);
}
ebus.register(visualizer);
tc.updatePanel(visualizer.getPlotPanels());
@@ -108,12 +117,6 @@ public class ExecutionExecutable implements Runnable {
handle.switchToIndeterminate();
// Run acquisition engine
if (visualizer != null) {
visualizer.startVisualization();
}
// Execute acquisition logic
acquisition.execute();
@@ -146,14 +149,10 @@ public class ExecutionExecutable implements Runnable {
// acquisition = null;
Logger.getLogger(ExecutionExecutable.class.getName()).log(Level.INFO, "Stop visualizer");
if(visualizer != null){
try {
visualizer.stopVisualization();
} catch (InterruptedException ex) {
Exceptions.printStackTrace(ex);
}
if(executor!=null){
executor.shutdownNow();
}
// Indicate end of task
Logger.getLogger(ExecutionExecutable.class.getName()).log(Level.INFO, "Destroy handle");
handle.finish();
@@ -16,16 +16,12 @@
*/
package ch.psi.fda.ui.ee;
import ch.psi.fda.aq.AcquisitionEngineConfiguration;
import ch.psi.fda.install.ApplicationConfigurator;
import ch.psi.jcae.JcaeProperties;
import ch.psi.fda.ui.preferences.api.Preferences;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.io.File;
import java.io.IOException;
import org.openide.modules.ModuleInstall;
import org.openide.util.Exceptions;
import org.openide.util.Lookup;
/**
@@ -44,12 +40,13 @@ public class Installer extends ModuleInstall {
ApplicationConfigurator c = new ApplicationConfigurator();
c.initializeApplication();
try {
AcquisitionEngineConfiguration.getInstance().reloadConfiguration();
JcaeProperties.getInstance().loadProperties();
} catch (IOException ex) {
Exceptions.printStackTrace(ex);
}
// try {
Configuration.getInstance().getConfiguration().loadConfiguration();
// new AcquisitionConfiguration().loadConfiguration();
// JcaeProperties.getInstance().loadProperties();
// } catch (IOException ex) {
// Exceptions.printStackTrace(ex);
// }
// Register a change listener to reconfigure scan engine when the home directory changes
@@ -63,12 +60,12 @@ public class Installer extends ModuleInstall {
ApplicationConfigurator c = new ApplicationConfigurator();
c.initializeApplication();
try {
AcquisitionEngineConfiguration.getInstance().reloadConfiguration();
JcaeProperties.getInstance().loadProperties();
} catch (IOException ex) {
Exceptions.printStackTrace(ex);
}
// try {
Configuration.getInstance().getConfiguration().loadConfiguration();
// JcaeProperties.getInstance().loadProperties();
// } catch (IOException ex) {
// Exceptions.printStackTrace(ex);
// }
}
});
@@ -28,6 +28,7 @@ import ch.psi.fda.serializer.DataSerializerTXT;
import ch.psi.fda.serializer.DataSerializerTXT2D;
import ch.psi.fda.serializer.DataSerializerTXTSplit;
import ch.psi.fda.ui.ee.api.ConversionService;
import com.google.common.eventbus.EventBus;
import java.io.File;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -49,39 +50,39 @@ public class SimpleConversionService implements ConversionService {
try {
Logger.getLogger(SimpleConversionService.class.getName()).log(Level.INFO, "Convert file {0} from {1} to {2}", new Object[]{input.getAbsolutePath(), reader, writer});
EventBus ebus = new EventBus();
// Create deserializer
final DataDeserializer deserializer;
if (reader.equals(Reader.TXT)) {
deserializer = new DataDeserializerTXT(input);
deserializer = new DataDeserializerTXT(ebus, input);
} else if (reader.equals(Reader.MDA)) {
deserializer = new DataDeserializerMDA(input);
deserializer = new DataDeserializerMDA(ebus, input);
} else {
throw new IllegalArgumentException("Reader of type " + reader + " not supported.");
}
final DataSerializer serializer;
if (writer.equals(Writer.MAT)) {
serializer = new DataSerializerMAT(deserializer.getQueue(), output);
serializer = new DataSerializerMAT(output);
} else if (writer.equals(Writer.MAT_2D)) {
serializer = new DataSerializerMAT2D(deserializer.getQueue(), output);
serializer = new DataSerializerMAT2D(output);
} else if (writer.equals(Writer.TXT)) {
serializer = new DataSerializerTXT(deserializer.getQueue(), output, false);
serializer = new DataSerializerTXT(output, false);
} else if (writer.equals(Writer.TXT_2D)) {
serializer = new DataSerializerTXT2D(deserializer.getQueue(), output);
serializer = new DataSerializerTXT2D(output);
} else if (writer.equals(Writer.TXT_SPLIT)) {
serializer = new DataSerializerTXTSplit(deserializer.getQueue(), output);
serializer = new DataSerializerTXTSplit(output);
} else if (writer.equals(Writer.MDA)) {
serializer = new DataSerializerMDA(deserializer.getQueue(), output);
serializer = new DataSerializerMDA(output);
} else if (writer.equals(Writer.MAT_2D_Z)) {
serializer = new DataSerializerMAT2DZigZag(deserializer.getQueue(), output);
serializer = new DataSerializerMAT2DZigZag(output);
} else {
throw new IllegalArgumentException("Writer of type " + writer + " not supported.");
}
ebus.register(serializer);
// Convert file
deserializer.run();
serializer.run();
deserializer.read();
} catch (Exception e) {
// Inform the user without waiting for its response
@@ -17,12 +17,11 @@
package ch.psi.fda.ui.ee;
import ch.psi.fda.aq.AcquisitionEngineConfiguration;
import ch.psi.fda.ui.ee.api.ExecutionService;
import ch.psi.fda.model.ModelManager;
import ch.psi.fda.model.v1.Configuration;
import ch.psi.fda.model.v1.Recipient;
import ch.psi.fda.notification.NotificationAgent;
import ch.psi.fda.aq.NotificationAgent;
import java.io.File;
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.ExecutorService;
@@ -42,7 +41,7 @@ import org.openide.util.lookup.ServiceProvider;
* Very simple implementation of the execution service.
* The service wraps the Acquisition object of the fda project
*
* This service is not threadsave!
* This service is not thread save!
* @author ebner
*/
@ServiceProvider(service=ExecutionService.class)
@@ -166,7 +165,7 @@ public class SimpleExecutionService implements ExecutionService {
@Override
public void testNotification(String recipient) {
NotificationAgent a = new NotificationAgent(AcquisitionEngineConfiguration.getInstance().getSmptServer(), "fda.test.notification@psi.ch");
NotificationAgent a = new NotificationAgent(ch.psi.fda.ui.ee.Configuration.getInstance().getConfiguration().getSmptServer(), "fda.test.notification@psi.ch");
Recipient r = new Recipient();
r.setValue(recipient);
r.setError(true);
@@ -178,7 +177,7 @@ public class SimpleExecutionService implements ExecutionService {
@Override
public boolean supportsFeature(String feature) {
if(feature.equalsIgnoreCase("ch.psi.aq.feature.otfscan")){
String prefix = AcquisitionEngineConfiguration.getInstance().getOtfChannelPrefix();
String prefix = ch.psi.fda.ui.ee.Configuration.getInstance().getConfiguration().getOtfChannelPrefix();
if(prefix != null && !prefix.trim().equals("")){
return true;
}
@@ -16,14 +16,18 @@
*/
package ch.psi.fda.ui.ee;
import ch.psi.fda.aq.VisualizationMapper;
import ch.psi.fda.ui.ee.api.VisualizationService;
import ch.psi.fda.deserializer.DataDeserializer;
import ch.psi.fda.deserializer.DataDeserializerTXT;
import ch.psi.fda.model.ModelManager;
import ch.psi.fda.model.v1.Configuration;
import ch.psi.fda.visualizer.Visualizer;
import com.google.common.eventbus.AsyncEventBus;
import com.google.common.eventbus.EventBus;
import java.io.File;
import java.util.List;
import java.util.concurrent.Executors;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.openide.DialogDisplayer;
@@ -76,26 +80,24 @@ public class SimpleVisualizationService implements VisualizationService {
throw new RuntimeException("Unable to load configuration file " + cfile.getAbsolutePath(), e);
}
DataDeserializer deserializer = new DataDeserializerTXT(file);
EventBus ebus = new AsyncEventBus(Executors.newSingleThreadExecutor());
DataDeserializer deserializer = new DataDeserializerTXT(ebus, file);
// Create Visualizer
Visualizer visualizer = new Visualizer(deserializer.getQueue(), c.getVisualization());
visualizer.setTerminateAtEOS(true);
Visualizer visualizer = new Visualizer(VisualizationMapper.mapVisualizations(c.getVisualization()));
// visualizer.setTerminateAtEOS(true);
visualizer.setUpdateAtStreamElement(false);
visualizer.setUpdateAtStreamDelimiter(false);
visualizer.setUpdateAtEndOfStream(true);
ebus.register(visualizer);
tc.updatePanel(visualizer.getPlotPanels());
// Start deserializer and visualizer
Thread td = new Thread(deserializer);
td.start();
Logger.getLogger(SimpleVisualizationService.class.getName()).log(Level.INFO, "Visualization started");
deserializer.read();
visualizer.startVisualization();
td.join();
Logger.getLogger(SimpleVisualizationService.class.getName()).log(Level.INFO, "Deserializiation finished");
// visualizer.visualize();
+1 -1
View File
@@ -4,7 +4,7 @@
<parent>
<artifactId>fda.ui</artifactId>
<groupId>ch.psi</groupId>
<version>1.1.40</version>
<version>2.0.1</version>
</parent>
<artifactId>fda.ui.preferences</artifactId>
+1 -1
View File
@@ -4,7 +4,7 @@
<groupId>ch.psi</groupId>
<artifactId>fda.ui</artifactId>
<version>1.1.40</version>
<version>2.0.1</version>
<packaging>pom</packaging>
<name>fda.ui - NB App Parent</name>