Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDoug Schaefer2017-12-01 16:59:16 +0000
committerDoug Schaefer2017-12-01 17:47:21 +0000
commit4eb76a4edeb208ae54b94fcd56734ec90d2db643 (patch)
treede535b030c59450a8c7ffb2e5c02595e2feb4cc6
parent193cb87bfaab25efeb1f75d789ca13cc63f61b4f (diff)
downloadorg.eclipse.cdt-4eb76a4edeb208ae54b94fcd56734ec90d2db643.tar.gz
org.eclipse.cdt-4eb76a4edeb208ae54b94fcd56734ec90d2db643.tar.xz
org.eclipse.cdt-4eb76a4edeb208ae54b94fcd56734ec90d2db643.zip
Fix issue with core build launch desc deletion.
When projects were deleted, sometimes the descriptors would not. We were creating our own core build launch descs which didn't have an equals method causing duplicate entries to be created. Arduino uses launch bar's project launch descs. This change does the same for core build. Change-Id: I2a6f60e92aaa20892d6c1d8331ded903b226984f
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/launch/CoreBuildLaunchDescriptorType.java3
-rw-r--r--debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/launch/CoreBuildProjectLaunchDescriptor.java48
2 files changed, 2 insertions, 49 deletions
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/launch/CoreBuildLaunchDescriptorType.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/launch/CoreBuildLaunchDescriptorType.java
index 661a6e3c896..ad5387aed29 100644
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/launch/CoreBuildLaunchDescriptorType.java
+++ b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/launch/CoreBuildLaunchDescriptorType.java
@@ -12,6 +12,7 @@ import org.eclipse.core.resources.IProject;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.launchbar.core.ILaunchDescriptor;
import org.eclipse.launchbar.core.ILaunchDescriptorType;
+import org.eclipse.launchbar.core.ProjectLaunchDescriptor;
import org.eclipse.launchbar.core.internal.Activator;
/**
@@ -25,7 +26,7 @@ public class CoreBuildLaunchDescriptorType implements ILaunchDescriptorType {
// Make sure it's a new style build
IProject project = (IProject) launchObject;
if (Activator.getService(ICBuildConfigurationManager.class).supports(project)) {
- return new CoreBuildProjectLaunchDescriptor(this, project);
+ return new ProjectLaunchDescriptor(this, project);
}
}
// TODO IBinary
diff --git a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/launch/CoreBuildProjectLaunchDescriptor.java b/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/launch/CoreBuildProjectLaunchDescriptor.java
deleted file mode 100644
index bfb4a223d96..00000000000
--- a/debug/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/launch/CoreBuildProjectLaunchDescriptor.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2016 QNX Software Systems and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *******************************************************************************/
-package org.eclipse.cdt.debug.internal.core.launch;
-
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.runtime.PlatformObject;
-import org.eclipse.launchbar.core.ILaunchDescriptor;
-import org.eclipse.launchbar.core.ILaunchDescriptorType;
-
-/**
- * A launch descriptor representing a project built with the new Core Build system.
- */
-public class CoreBuildProjectLaunchDescriptor extends PlatformObject implements ILaunchDescriptor {
-
- private final IProject project;
- private final CoreBuildLaunchDescriptorType type;
-
- public CoreBuildProjectLaunchDescriptor(CoreBuildLaunchDescriptorType type, IProject project) {
- this.type = type;
- this.project = project;
- }
-
- @SuppressWarnings("unchecked")
- @Override
- public <T> T getAdapter(Class<T> adapter) {
- if (IProject.class.equals(adapter)) {
- return (T) project;
- } else {
- return super.getAdapter(adapter);
- }
- }
-
- @Override
- public String getName() {
- return project.getName();
- }
-
- @Override
- public ILaunchDescriptorType getType() {
- return type;
- }
-
-}

Back to the top