diff options
author | Scott Tepavich | 2012-10-01 13:32:36 +0000 |
---|---|---|
committer | Eugene Tarassov | 2012-10-02 16:58:10 +0000 |
commit | d6d0340046b143974050c2c5c6810457db7be4d2 (patch) | |
tree | 53d6e9afa7d627300c6bab9735e45a143c09d806 | |
parent | 64b9f51a43e092a16cb91f670cbc3e6a9152bfb2 (diff) | |
download | org.eclipse.tcf-d6d0340046b143974050c2c5c6810457db7be4d2.tar.gz org.eclipse.tcf-d6d0340046b143974050c2c5c6810457db7be4d2.tar.xz org.eclipse.tcf-d6d0340046b143974050c2c5c6810457db7be4d2.zip |
Bug [390822] Add filtered list of container types.
-rw-r--r-- | plugins/org.eclipse.tcf.debug/src/org/eclipse/tcf/internal/debug/launch/TCFSourceLookupDirector.java | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/plugins/org.eclipse.tcf.debug/src/org/eclipse/tcf/internal/debug/launch/TCFSourceLookupDirector.java b/plugins/org.eclipse.tcf.debug/src/org/eclipse/tcf/internal/debug/launch/TCFSourceLookupDirector.java index b9e35df35..d0ff20234 100644 --- a/plugins/org.eclipse.tcf.debug/src/org/eclipse/tcf/internal/debug/launch/TCFSourceLookupDirector.java +++ b/plugins/org.eclipse.tcf.debug/src/org/eclipse/tcf/internal/debug/launch/TCFSourceLookupDirector.java @@ -12,7 +12,9 @@ package org.eclipse.tcf.internal.debug.launch; import java.io.File; import java.net.URI; +import java.util.HashSet; import java.util.Map; +import java.util.Set; import org.eclipse.core.filesystem.URIUtil; import org.eclipse.core.resources.IFile; @@ -22,6 +24,7 @@ import org.eclipse.core.runtime.IPath; import org.eclipse.debug.core.model.ISourceLocator; import org.eclipse.debug.core.model.IStackFrame; import org.eclipse.debug.core.sourcelookup.AbstractSourceLookupDirector; +import org.eclipse.debug.core.sourcelookup.ISourceContainerType; import org.eclipse.debug.core.sourcelookup.ISourceLookupDirector; import org.eclipse.debug.core.sourcelookup.ISourceLookupParticipant; import org.eclipse.debug.core.sourcelookup.containers.LocalFileStorage; @@ -37,6 +40,21 @@ import org.eclipse.tcf.util.TCFTask; */ public class TCFSourceLookupDirector extends AbstractSourceLookupDirector { + private static Set<String> fSupportedContainerTypes; + static { + fSupportedContainerTypes = new HashSet<String>(); + fSupportedContainerTypes.add("org.eclipse.cdt.debug.core.containerType.absolutePath"); + fSupportedContainerTypes.add("org.eclipse.cdt.debug.core.containerType.absolutePath"); + fSupportedContainerTypes.add("org.eclipse.cdt.debug.core.containerType.programRelativePath"); + fSupportedContainerTypes.add("org.eclipse.cdt.debug.core.containerType.mapping"); + fSupportedContainerTypes.add("org.eclipse.cdt.debug.core.containerType.compilationDirectory"); + fSupportedContainerTypes.add("org.eclipse.cdt.debug.core.containerType.project"); + fSupportedContainerTypes.add("org.eclipse.cdt.debug.core.containerType.sourceFoldersRelativePath"); + fSupportedContainerTypes.add("org.eclipse.debug.core.containerType.folder"); + fSupportedContainerTypes.add("org.eclipse.debug.core.containerType.workspace"); + fSupportedContainerTypes.add("org.eclipse.debug.core.containerType.directory"); + }; + public static Object lookup(final TCFLaunch launch, final String ctx, Object element) { if (element instanceof ILineNumbers.CodeArea) { element = TCFSourceLookupParticipant.toFileName((ILineNumbers.CodeArea)element); @@ -120,4 +138,12 @@ public class TCFSourceLookupDirector extends AbstractSourceLookupDirector { public void initializeParticipants() { addParticipants(new ISourceLookupParticipant[] { new TCFSourceLookupParticipant() }); } + + /* (non-Javadoc) + * @see org.eclipse.debug.core.sourcelookup.ISourceLookupDirector#supportsSourceContainerType(org.eclipse.debug.core.sourcelookup.ISourceContainerType) + */ + @Override + public boolean supportsSourceContainerType(ISourceContainerType type) { + return fSupportedContainerTypes.contains(type.getId()); + } } |