X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=eclipse%2Fplugins%2Forg.argeo.slc.ide.ui%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Fide%2Fui%2Flaunch%2Fosgi%2FEclipseBootLaunchConfiguration.java;fp=eclipse%2Fplugins%2Forg.argeo.slc.ide.ui%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Fide%2Fui%2Flaunch%2Fosgi%2FEclipseBootLaunchConfiguration.java;h=6611f209ba3cb830bc836c8fa0f2b5de8b5c7309;hb=331ed178b4b5ee277a5c62477d4892f8f089a8b9;hp=0000000000000000000000000000000000000000;hpb=9cac51f7b1b4b1c2d9a724ff9669fd15f8b1f1ec;p=gpl%2Fargeo-slc.git diff --git a/eclipse/plugins/org.argeo.slc.ide.ui/src/main/java/org/argeo/slc/ide/ui/launch/osgi/EclipseBootLaunchConfiguration.java b/eclipse/plugins/org.argeo.slc.ide.ui/src/main/java/org/argeo/slc/ide/ui/launch/osgi/EclipseBootLaunchConfiguration.java new file mode 100644 index 000000000..6611f209b --- /dev/null +++ b/eclipse/plugins/org.argeo.slc.ide.ui/src/main/java/org/argeo/slc/ide/ui/launch/osgi/EclipseBootLaunchConfiguration.java @@ -0,0 +1,53 @@ +package org.argeo.slc.ide.ui.launch.osgi; + +import org.argeo.slc.ide.ui.SlcIdeUiPlugin; +import org.eclipse.core.resources.IFile; +import org.eclipse.core.resources.IResource; +import org.eclipse.core.runtime.CoreException; +import org.eclipse.core.runtime.IProgressMonitor; +import org.eclipse.debug.core.ILaunch; +import org.eclipse.debug.core.ILaunchConfiguration; +import org.eclipse.debug.core.ILaunchConfigurationWorkingCopy; +import org.eclipse.pde.launching.EclipseApplicationLaunchConfiguration; + +/** OSGiBoot launch configuration. */ +public class EclipseBootLaunchConfiguration extends + EclipseApplicationLaunchConfiguration { + public final static String ID = SlcIdeUiPlugin.ID + ".EclipseBootLauncher"; + + @Override + public void launch(ILaunchConfiguration configuration, String mode, + ILaunch launch, IProgressMonitor monitor) throws CoreException { + super.launch(configuration, mode, launch, monitor); + + // System.out.println("targetBundles=" + // + configuration.getAttribute( + // IPDELauncherConstants.SELECTED_TARGET_PLUGINS, "")); + // System.out.println("workspaceBundles=" + // + configuration.getAttribute( + // IPDELauncherConstants.SELECTED_WORKSPACE_PLUGINS, "")); + + // Refresh resources before launching + final IFile propertiesFile = (IFile) configuration.getMappedResources()[0]; + propertiesFile.getParent().refreshLocal(IResource.DEPTH_INFINITE, + monitor); + } + + @Override + protected void preLaunchCheck(ILaunchConfiguration configuration, + ILaunch launch, IProgressMonitor monitor) throws CoreException { + ILaunchConfigurationWorkingCopy wc = configuration.getWorkingCopy(); + OsgiLaunchHelper.updateLaunchConfiguration(wc, true); + wc.doSave(); + super.preLaunchCheck(configuration, launch, monitor); + + // Note that if a Java project contains a build.properties it has to + // declare the sources otherwise it will be skipped in the generation of + // the dev.properties file! + + // for(Object bundleId:fAllBundles.keySet()){ + // System.out.println(bundleId+"="+fAllBundles.get(bundleId)); + // } + } + +}