+ ILaunchConfigurationWorkingCopy configuration) {
+ try {
+ IFile propertiesFile = (IFile) configuration.getMappedResources()[0];
+ propertiesFile.refreshLocal(IResource.DEPTH_ONE, null);
+
+ Properties properties = OsgiLaunchHelper
+ .readProperties(propertiesFile);
+
+ List<String> bundlesToStart = new ArrayList<String>();
+ Map<String, String> systemPropertiesToAppend = new HashMap<String, String>();
+ OsgiLaunchHelper.interpretProperties(properties, bundlesToStart,
+ systemPropertiesToAppend);
+
+ File workingDir = getWorkingDirectory(configuration);
+ File dataDir = new File(workingDir, "data");
+
+ OsgiLaunchHelper.updateLaunchConfiguration(configuration,
+ bundlesToStart, systemPropertiesToAppend, dataDir
+ .getAbsolutePath());
+ } catch (Exception e) {
+ ErrorDialog.openError(Display.getCurrent().getActiveShell(),
+ "Error", "Cannot read properties",
+ new Status(IStatus.ERROR, SlcIdeUiPlugin.ID,
+ e.getMessage(), e));
+ return;
+ }
+ }
+
+ static void updateLaunchConfiguration(