Bug 552783 - [Moka] When there is no server specified in preference the
wrong preference page is open
Change-Id: If8b818d72e1f2ea5a7a2315033c854e752218fe6
Signed-off-by: Pauline DEVILLE <pauline.deville@cea.fr>
diff --git a/plugins/org.eclipse.papyrus.moka.kernel.debug/src/org/eclipse/papyrus/moka/debug/service/DebugService.java b/plugins/org.eclipse.papyrus.moka.kernel.debug/src/org/eclipse/papyrus/moka/debug/service/DebugService.java
index b8e55ee..944defe 100644
--- a/plugins/org.eclipse.papyrus.moka.kernel.debug/src/org/eclipse/papyrus/moka/debug/service/DebugService.java
+++ b/plugins/org.eclipse.papyrus.moka.kernel.debug/src/org/eclipse/papyrus/moka/debug/service/DebugService.java
@@ -15,7 +15,7 @@
*****************************************************************************/
package org.eclipse.papyrus.moka.debug.service;
-import static org.eclipse.papyrus.moka.kernel.IKernelPreferences.KERNEL_PREFERENCES_ID;
+import static org.eclipse.papyrus.moka.kernel.process.IServerMqttPreferences.MQTT_SERVER_PORT;
import java.util.ArrayList;
import java.util.HashMap;
@@ -24,15 +24,13 @@
import java.util.concurrent.locks.Condition;
import java.util.concurrent.locks.ReentrantLock;
-import org.eclipse.core.runtime.preferences.ConfigurationScope;
import org.eclipse.debug.core.DebugException;
+import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.paho.client.mqttv3.MqttException;
import org.eclipse.papyrus.moka.debug.engine.IDebuggableExecutionEngine;
import org.eclipse.papyrus.moka.debug.engine.IDebuggableExecutionEngineThread;
+import org.eclipse.papyrus.moka.kernel.MokaKernelActivator;
import org.eclipse.papyrus.moka.kernel.service.ExecutionEngineService;
-import org.eclipse.ui.preferences.ScopedPreferenceStore;
-
-import static org.eclipse.papyrus.moka.kernel.process.IServerMqttPreferences.MQTT_SERVER_PORT;
public abstract class DebugService<T, C> extends ExecutionEngineService<IDebuggableExecutionEngine<T, C>>
implements IDebugService<T, C> {
@@ -105,7 +103,7 @@
}
private void initClient() {
- ScopedPreferenceStore store = new ScopedPreferenceStore(ConfigurationScope.INSTANCE, KERNEL_PREFERENCES_ID);
+ IPreferenceStore store = MokaKernelActivator.getDefault().getPreferenceStore();
String port = store.getString(MQTT_SERVER_PORT);
client = new DebugServiceClient("tcp://localhost:" + port, "Debug Service Client", this);
client.run();
diff --git a/plugins/org.eclipse.papyrus.moka.kernel.debug/src/org/eclipse/papyrus/moka/debugtarget/ExecutionEngineDebugTarget.java b/plugins/org.eclipse.papyrus.moka.kernel.debug/src/org/eclipse/papyrus/moka/debugtarget/ExecutionEngineDebugTarget.java
index 1784713..21bff7b 100644
--- a/plugins/org.eclipse.papyrus.moka.kernel.debug/src/org/eclipse/papyrus/moka/debugtarget/ExecutionEngineDebugTarget.java
+++ b/plugins/org.eclipse.papyrus.moka.kernel.debug/src/org/eclipse/papyrus/moka/debugtarget/ExecutionEngineDebugTarget.java
@@ -15,7 +15,6 @@
*****************************************************************************/
package org.eclipse.papyrus.moka.debugtarget;
-import static org.eclipse.papyrus.moka.kernel.IKernelPreferences.KERNEL_PREFERENCES_ID;
import static org.eclipse.papyrus.moka.kernel.process.IServerMqttPreferences.MQTT_SERVER_PORT;
import java.util.ArrayList;
@@ -26,7 +25,6 @@
import java.util.concurrent.locks.ReentrantLock;
import org.eclipse.core.resources.IMarkerDelta;
-import org.eclipse.core.runtime.preferences.ConfigurationScope;
import org.eclipse.debug.core.DebugEvent;
import org.eclipse.debug.core.DebugException;
import org.eclipse.debug.core.ILaunch;
@@ -35,10 +33,11 @@
import org.eclipse.debug.core.model.IMemoryBlock;
import org.eclipse.debug.core.model.IProcess;
import org.eclipse.debug.core.model.IThread;
+import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.papyrus.moka.debug.engine.IDebuggableExecutionEngine;
import org.eclipse.papyrus.moka.debug.messages.ThreadRequest;
+import org.eclipse.papyrus.moka.kernel.MokaKernelActivator;
import org.eclipse.papyrus.moka.kernel.process.ExecutionEngineProcess;
-import org.eclipse.ui.preferences.ScopedPreferenceStore;
public class ExecutionEngineDebugTarget extends ExecutionEngineDebugElement implements IExecutionEngineDebugTarget {
@@ -87,7 +86,7 @@
}
private void initClient() {
- ScopedPreferenceStore store = new ScopedPreferenceStore(ConfigurationScope.INSTANCE, KERNEL_PREFERENCES_ID);
+ IPreferenceStore store = MokaKernelActivator.getDefault().getPreferenceStore();
String port = store.getString(MQTT_SERVER_PORT);
client = new ExecutionEngineDebugTargetClient("tcp://localhost:" + port, "Debug Target", this);
client.run();
diff --git a/plugins/org.eclipse.papyrus.moka.kernel/src/org/eclipse/papyrus/moka/kernel/IKernelPreferences.java b/plugins/org.eclipse.papyrus.moka.kernel/src/org/eclipse/papyrus/moka/kernel/IKernelPreferences.java
index 0e8bed3..5ef32e1 100644
--- a/plugins/org.eclipse.papyrus.moka.kernel/src/org/eclipse/papyrus/moka/kernel/IKernelPreferences.java
+++ b/plugins/org.eclipse.papyrus.moka.kernel/src/org/eclipse/papyrus/moka/kernel/IKernelPreferences.java
@@ -17,6 +17,6 @@
public interface IKernelPreferences {
- final static String KERNEL_PREFERENCES_ID = "org.eclipse.papyrus.moka.kernel";
+ final static String KERNEL_PREFERENCES_ID = "org.eclipse.papyrus.moka.kernel.preferences";
}
diff --git a/plugins/org.eclipse.papyrus.moka.kernel/src/org/eclipse/papyrus/moka/kernel/process/ServerMqttProcess.java b/plugins/org.eclipse.papyrus.moka.kernel/src/org/eclipse/papyrus/moka/kernel/process/ServerMqttProcess.java
index 9129615..d044ee4 100644
--- a/plugins/org.eclipse.papyrus.moka.kernel/src/org/eclipse/papyrus/moka/kernel/process/ServerMqttProcess.java
+++ b/plugins/org.eclipse.papyrus.moka.kernel/src/org/eclipse/papyrus/moka/kernel/process/ServerMqttProcess.java
@@ -15,15 +15,6 @@
*****************************************************************************/
package org.eclipse.papyrus.moka.kernel.process;
-import org.eclipse.core.runtime.preferences.ConfigurationScope;
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.debug.core.ILaunch;
-import org.eclipse.debug.core.ILaunchesListener2;
-import org.eclipse.debug.core.model.IStreamsProxy;
-import org.eclipse.ui.preferences.ScopedPreferenceStore;
-
-import static org.eclipse.papyrus.moka.kernel.IKernelPreferences.KERNEL_PREFERENCES_ID;
import static org.eclipse.papyrus.moka.kernel.process.IServerMqttPreferences.MQTT_SERVER_PATH;
import static org.eclipse.papyrus.moka.kernel.process.IServerMqttPreferences.MQTT_SERVER_PORT;
@@ -34,6 +25,14 @@
import java.util.Iterator;
import java.util.List;
+import org.eclipse.debug.core.DebugException;
+import org.eclipse.debug.core.DebugPlugin;
+import org.eclipse.debug.core.ILaunch;
+import org.eclipse.debug.core.ILaunchesListener2;
+import org.eclipse.debug.core.model.IStreamsProxy;
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.eclipse.papyrus.moka.kernel.MokaKernelActivator;
+
public class ServerMqttProcess extends BaseProcess<Process> implements ILaunchesListener2 {
protected IOException exception;
@@ -97,7 +96,7 @@
@Override
public void run() {
- ScopedPreferenceStore store = new ScopedPreferenceStore(ConfigurationScope.INSTANCE, KERNEL_PREFERENCES_ID);
+ IPreferenceStore store = MokaKernelActivator.getDefault().getPreferenceStore();
File serverExecutable = new File(store.getString(MQTT_SERVER_PATH));
if (serverExecutable.exists() && serverExecutable.isFile()) {
ProcessBuilder builder = new ProcessBuilder().inheritIO();
diff --git a/plugins/org.eclipse.papyrus.moka.ui/src/org/eclipse/papyrus/moka/launch/ExecutionEngineLaunchDelegate.java b/plugins/org.eclipse.papyrus.moka.ui/src/org/eclipse/papyrus/moka/launch/ExecutionEngineLaunchDelegate.java
index 452f0b8..f646f3a 100644
--- a/plugins/org.eclipse.papyrus.moka.ui/src/org/eclipse/papyrus/moka/launch/ExecutionEngineLaunchDelegate.java
+++ b/plugins/org.eclipse.papyrus.moka.ui/src/org/eclipse/papyrus/moka/launch/ExecutionEngineLaunchDelegate.java
@@ -15,7 +15,6 @@
*****************************************************************************/
package org.eclipse.papyrus.moka.launch;
-import static org.eclipse.papyrus.moka.kernel.IKernelPreferences.KERNEL_PREFERENCES_ID;
import static org.eclipse.papyrus.moka.kernel.process.IServerMqttPreferences.MODEL_VALIDATION_ON_LAUNCH;
import static org.eclipse.papyrus.moka.kernel.process.IServerMqttPreferences.MQTT_SERVER_PATH;
import static org.eclipse.papyrus.moka.kernel.process.IServerMqttPreferences.MQTT_SERVER_PORT;
@@ -27,12 +26,12 @@
import org.eclipse.core.runtime.SubMonitor;
import org.eclipse.core.runtime.jobs.IJobChangeListener;
import org.eclipse.core.runtime.jobs.Job;
-import org.eclipse.core.runtime.preferences.ConfigurationScope;
import org.eclipse.debug.core.ILaunch;
import org.eclipse.debug.core.ILaunchConfiguration;
import org.eclipse.debug.core.model.ILaunchConfigurationDelegate;
import org.eclipse.debug.core.model.LaunchConfigurationDelegate;
import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.papyrus.infra.core.resource.ModelSet;
import org.eclipse.papyrus.infra.core.services.ServiceException;
import org.eclipse.papyrus.infra.core.services.ServicesRegistry;
@@ -40,6 +39,7 @@
import org.eclipse.papyrus.moka.animation.css.MokaCSSDiagram;
import org.eclipse.papyrus.moka.debugtarget.ExecutionEngineDebugTarget;
import org.eclipse.papyrus.moka.kernel.IKernelPreferences;
+import org.eclipse.papyrus.moka.kernel.MokaKernelActivator;
import org.eclipse.papyrus.moka.kernel.engine.EngineConfiguration;
import org.eclipse.papyrus.moka.kernel.engine.EngineRegistry;
import org.eclipse.papyrus.moka.kernel.process.ExecutionEngineProcess;
@@ -52,7 +52,6 @@
import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.IEditorPart;
import org.eclipse.ui.dialogs.PreferencesUtil;
-import org.eclipse.ui.preferences.ScopedPreferenceStore;
import org.eclipse.uml2.uml.Class;
public class ExecutionEngineLaunchDelegate extends LaunchConfigurationDelegate implements ILaunchConfigurationDelegate {
@@ -84,7 +83,7 @@
private boolean canRunServer() {
boolean canRunServer = false;
- ScopedPreferenceStore store = new ScopedPreferenceStore(ConfigurationScope.INSTANCE, KERNEL_PREFERENCES_ID);
+ IPreferenceStore store = MokaKernelActivator.getDefault().getPreferenceStore();
if (store != null) {
canRunServer = !store.getString(MQTT_SERVER_PATH).isEmpty() && store.getInt(MQTT_SERVER_PORT) > 0;
}
@@ -96,8 +95,7 @@
// validation is run. If there are errors, the system ask the user if he/she
// still wants to run the simulation.
// Return true if the simulation must continue, false otherwise
- ScopedPreferenceStore store = new ScopedPreferenceStore(ConfigurationScope.INSTANCE,
- IKernelPreferences.KERNEL_PREFERENCES_ID);
+ IPreferenceStore store = MokaKernelActivator.getDefault().getPreferenceStore();
boolean mustValidate = store.getBoolean(MODEL_VALIDATION_ON_LAUNCH);
boolean continueSimulation = true;
if (mustValidate) {
diff --git a/plugins/org.eclipse.papyrus.moka.ui/src/org/eclipse/papyrus/moka/ui/preferences/PapyrusSimulationPreferencePage.java b/plugins/org.eclipse.papyrus.moka.ui/src/org/eclipse/papyrus/moka/ui/preferences/PapyrusSimulationPreferencePage.java
index 14a5f8a..b5077a5 100644
--- a/plugins/org.eclipse.papyrus.moka.ui/src/org/eclipse/papyrus/moka/ui/preferences/PapyrusSimulationPreferencePage.java
+++ b/plugins/org.eclipse.papyrus.moka.ui/src/org/eclipse/papyrus/moka/ui/preferences/PapyrusSimulationPreferencePage.java
@@ -15,20 +15,18 @@
*****************************************************************************/
package org.eclipse.papyrus.moka.ui.preferences;
+import static org.eclipse.papyrus.moka.kernel.process.IServerMqttPreferences.MODEL_VALIDATION_ON_LAUNCH;
+import static org.eclipse.papyrus.moka.kernel.process.IServerMqttPreferences.MQTT_SERVER_PATH;
+import static org.eclipse.papyrus.moka.kernel.process.IServerMqttPreferences.MQTT_SERVER_PORT;
+
import org.eclipse.jface.preference.BooleanFieldEditor;
import org.eclipse.jface.preference.FieldEditorPreferencePage;
import org.eclipse.jface.preference.FileFieldEditor;
+import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.preference.IntegerFieldEditor;
-import org.eclipse.papyrus.moka.kernel.IKernelPreferences;
+import org.eclipse.papyrus.moka.kernel.MokaKernelActivator;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPreferencePage;
-import org.eclipse.ui.preferences.ScopedPreferenceStore;
-
-import static org.eclipse.papyrus.moka.kernel.process.IServerMqttPreferences.MQTT_SERVER_PATH;
-import static org.eclipse.papyrus.moka.kernel.process.IServerMqttPreferences.MQTT_SERVER_PORT;
-import static org.eclipse.papyrus.moka.kernel.process.IServerMqttPreferences.MODEL_VALIDATION_ON_LAUNCH;
-
-import org.eclipse.core.runtime.preferences.ConfigurationScope;
public class PapyrusSimulationPreferencePage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage {
@@ -45,8 +43,8 @@
}
public void init(IWorkbench workbench) {
- setPreferenceStore(
- new ScopedPreferenceStore(ConfigurationScope.INSTANCE, IKernelPreferences.KERNEL_PREFERENCES_ID));
+ IPreferenceStore store = MokaKernelActivator.getDefault().getPreferenceStore();
+ setPreferenceStore(store);
setDescription(DESCRIPTION);
}
diff --git a/plugins/org.eclipse.papyrus.moka.ui/src/org/eclipse/papyrus/moka/ui/validation/ValidationDiagnosticDialog.java b/plugins/org.eclipse.papyrus.moka.ui/src/org/eclipse/papyrus/moka/ui/validation/ValidationDiagnosticDialog.java
index f628b64..7c138c0 100644
--- a/plugins/org.eclipse.papyrus.moka.ui/src/org/eclipse/papyrus/moka/ui/validation/ValidationDiagnosticDialog.java
+++ b/plugins/org.eclipse.papyrus.moka.ui/src/org/eclipse/papyrus/moka/ui/validation/ValidationDiagnosticDialog.java
@@ -17,13 +17,11 @@
import static org.eclipse.papyrus.moka.kernel.process.IServerMqttPreferences.MODEL_VALIDATION_ON_LAUNCH;
-import java.io.IOException;
-
-import org.eclipse.core.runtime.preferences.ConfigurationScope;
import org.eclipse.emf.common.util.Diagnostic;
import org.eclipse.jface.dialogs.IDialogConstants;
+import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.papyrus.infra.services.markerlistener.dialogs.DiagnosticDialog;
-import org.eclipse.papyrus.moka.kernel.IKernelPreferences;
+import org.eclipse.papyrus.moka.kernel.MokaKernelActivator;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
@@ -82,12 +80,11 @@
@Override
protected void buttonPressed(int id) {
if (id == IDialogConstants.OK_ID || id == IDialogConstants.CANCEL_ID) {
- ScopedPreferenceStore store = new ScopedPreferenceStore(ConfigurationScope.INSTANCE,
- IKernelPreferences.KERNEL_PREFERENCES_ID);
+ IPreferenceStore store = MokaKernelActivator.getDefault().getPreferenceStore();
store.setValue(MODEL_VALIDATION_ON_LAUNCH, !dontValidateAnymoreBeforeLaunchButton);
try {
- store.save();
- } catch (IOException e) {
+ ((ScopedPreferenceStore) store).save();
+ } catch (Exception e) {
e.printStackTrace();
}
}