mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-08-10 17:55:39 +02:00
bug 319512: Missing type arguments on managedbuilder.core
This commit is contained in:
parent
49b52caf42
commit
3cbe8ee97c
4 changed files with 83 additions and 111 deletions
|
@ -210,13 +210,13 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
// Resource configurations defined in the manifest files
|
// Resource configurations defined in the manifest files
|
||||||
private static Map<String, IResourceConfiguration> extensionResourceConfigurationMap;
|
private static Map<String, IResourceConfiguration> extensionResourceConfigurationMap;
|
||||||
// Tool-chains defined in the manifest files
|
// Tool-chains defined in the manifest files
|
||||||
private static SortedMap<String, IToolChain> extensionToolChainMap;
|
private static SortedMap<String, ToolChain> extensionToolChainMap;
|
||||||
// Tools defined in the manifest files
|
// Tools defined in the manifest files
|
||||||
private static SortedMap<String, ITool> extensionToolMap;
|
private static SortedMap<String, Tool> extensionToolMap;
|
||||||
// Target Platforms defined in the manifest files
|
// Target Platforms defined in the manifest files
|
||||||
private static Map<String, ITargetPlatform> extensionTargetPlatformMap;
|
private static Map<String, ITargetPlatform> extensionTargetPlatformMap;
|
||||||
// Builders defined in the manifest files
|
// Builders defined in the manifest files
|
||||||
private static SortedMap<String, IBuilder> extensionBuilderMap;
|
private static SortedMap<String, Builder> extensionBuilderMap;
|
||||||
// Options defined in the manifest files
|
// Options defined in the manifest files
|
||||||
private static Map<String, IOption> extensionOptionMap;
|
private static Map<String, IOption> extensionOptionMap;
|
||||||
// Option Categories defined in the manifest files
|
// Option Categories defined in the manifest files
|
||||||
|
@ -251,9 +251,9 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
// Environment Build Paths Change Listener
|
// Environment Build Paths Change Listener
|
||||||
private static IEnvironmentBuildPathsChangeListener fEnvironmentBuildPathsChangeListener;
|
private static IEnvironmentBuildPathsChangeListener fEnvironmentBuildPathsChangeListener;
|
||||||
|
|
||||||
private static HashMap<MatchKey, List<ToolChain>> fSortedToolChains;
|
private static HashMap<MatchKey<ToolChain>, List<ToolChain>> fSortedToolChains;
|
||||||
private static HashMap<MatchKey, List<Tool>> fSortedTools;
|
private static HashMap<MatchKey<Tool>, List<Tool>> fSortedTools;
|
||||||
private static HashMap<MatchKey, List<Builder>> fSortedBuilders;
|
private static HashMap<MatchKey<Builder>, List<Builder>> fSortedBuilders;
|
||||||
|
|
||||||
private static Map<IProject, IManagedBuildInfo> fInfoMap = new HashMap<IProject, IManagedBuildInfo>();
|
private static Map<IProject, IManagedBuildInfo> fInfoMap = new HashMap<IProject, IManagedBuildInfo>();
|
||||||
|
|
||||||
|
@ -407,55 +407,54 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Safe accessor for the map of IDs to ToolChains
|
* Safe internal accessor for the map of IDs to ToolChains
|
||||||
*/
|
*/
|
||||||
public static SortedMap<String, IToolChain> getExtensionToolChainMap() {
|
private static SortedMap<String, ToolChain> getExtensionToolChainMapInternal() {
|
||||||
try {
|
try {
|
||||||
loadExtensions();
|
loadExtensions();
|
||||||
} catch (BuildException e) {
|
} catch (BuildException e) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (extensionToolChainMap == null) {
|
if (extensionToolChainMap == null) {
|
||||||
extensionToolChainMap = new TreeMap<String, IToolChain>();
|
extensionToolChainMap = new TreeMap<String, ToolChain>();
|
||||||
}
|
}
|
||||||
return extensionToolChainMap;
|
return extensionToolChainMap;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Safe accessor for the map of IDs to ToolChains
|
||||||
|
*/
|
||||||
|
public static SortedMap<String, ? extends IToolChain> getExtensionToolChainMap() {
|
||||||
|
return getExtensionToolChainMapInternal();
|
||||||
|
}
|
||||||
|
|
||||||
public static IToolChain[] getExtensionToolChains() {
|
public static IToolChain[] getExtensionToolChains() {
|
||||||
|
return getExtensionToolChainMapInternal().values().toArray(new ToolChain[extensionToolChainMap.size()]);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Safe internal accessor for the map of IDs to Tools
|
||||||
|
*/
|
||||||
|
private static SortedMap<String, Tool> getExtensionToolMapInternal() {
|
||||||
try {
|
try {
|
||||||
loadExtensions();
|
loadExtensions();
|
||||||
} catch (BuildException e) {
|
} catch (BuildException e) {
|
||||||
}
|
}
|
||||||
|
if (extensionToolMap == null) {
|
||||||
if (extensionToolChainMap == null) {
|
extensionToolMap = new TreeMap<String, Tool>();
|
||||||
extensionToolChainMap = new TreeMap<String, IToolChain>();
|
|
||||||
}
|
}
|
||||||
return extensionToolChainMap.values().toArray(new ToolChain[extensionToolChainMap.size()]);
|
return extensionToolMap;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Safe accessor for the map of IDs to Tools
|
* Safe accessor for the map of IDs to Tools
|
||||||
*/
|
*/
|
||||||
public static SortedMap<String, ITool> getExtensionToolMap() {
|
public static SortedMap<String, ? extends ITool> getExtensionToolMap() {
|
||||||
try {
|
return getExtensionToolMapInternal();
|
||||||
loadExtensions();
|
|
||||||
} catch (BuildException e) {
|
|
||||||
}
|
|
||||||
if (extensionToolMap == null) {
|
|
||||||
extensionToolMap = new TreeMap<String, ITool>();
|
|
||||||
}
|
|
||||||
return extensionToolMap;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static ITool[] getExtensionTools() {
|
public static ITool[] getExtensionTools() {
|
||||||
try {
|
return getExtensionToolMapInternal().values().toArray(new Tool[extensionToolMap.size()]);
|
||||||
loadExtensions();
|
|
||||||
} catch (BuildException e) {
|
|
||||||
}
|
|
||||||
if (extensionToolMap == null) {
|
|
||||||
extensionToolMap = new TreeMap<String, ITool>();
|
|
||||||
}
|
|
||||||
return extensionToolMap.values().toArray(new Tool[extensionToolMap.size()]);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -469,28 +468,28 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Safe accessor for the map of IDs to Builders
|
* Safe internal accessor for the map of IDs to Builders
|
||||||
*/
|
*/
|
||||||
public static SortedMap<String, IBuilder> getExtensionBuilderMap() {
|
private static SortedMap<String, Builder> getExtensionBuilderMapInternal() {
|
||||||
try {
|
try {
|
||||||
loadExtensions();
|
loadExtensions();
|
||||||
} catch (BuildException e) {
|
} catch (BuildException e) {
|
||||||
}
|
}
|
||||||
if (extensionBuilderMap == null) {
|
if (extensionBuilderMap == null) {
|
||||||
extensionBuilderMap = new TreeMap<String, IBuilder>();
|
extensionBuilderMap = new TreeMap<String, Builder>();
|
||||||
}
|
}
|
||||||
return extensionBuilderMap;
|
return extensionBuilderMap;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Safe accessor for the map of IDs to Builders
|
||||||
|
*/
|
||||||
|
public static SortedMap<String, ? extends IBuilder> getExtensionBuilderMap() {
|
||||||
|
return getExtensionBuilderMapInternal();
|
||||||
|
}
|
||||||
|
|
||||||
public static IBuilder[] getExtensionBuilders() {
|
public static IBuilder[] getExtensionBuilders() {
|
||||||
try {
|
return getExtensionBuilderMapInternal().values().toArray(new Builder[extensionBuilderMap.size()]);
|
||||||
loadExtensions();
|
|
||||||
} catch (BuildException e) {
|
|
||||||
}
|
|
||||||
if (extensionBuilderMap == null) {
|
|
||||||
extensionBuilderMap = new TreeMap<String, IBuilder>();
|
|
||||||
}
|
|
||||||
return extensionBuilderMap.values().toArray(new Builder[extensionBuilderMap.size()]);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -635,15 +634,7 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
* or {@code null}.
|
* or {@code null}.
|
||||||
*/
|
*/
|
||||||
public static IToolChain getExtensionToolChain(String id) {
|
public static IToolChain getExtensionToolChain(String id) {
|
||||||
try {
|
return getExtensionToolChainMapInternal().get(id);
|
||||||
// Make sure the extensions are loaded
|
|
||||||
loadExtensions();
|
|
||||||
} catch (BuildException e) {
|
|
||||||
// TODO Auto-generated catch block
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
|
|
||||||
return getExtensionToolChainMap().get(id);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -651,15 +642,7 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
* or {@code null}.
|
* or {@code null}.
|
||||||
*/
|
*/
|
||||||
public static ITool getExtensionTool(String id) {
|
public static ITool getExtensionTool(String id) {
|
||||||
try {
|
return getExtensionToolMapInternal().get(id);
|
||||||
// Make sure the extensions are loaded
|
|
||||||
loadExtensions();
|
|
||||||
} catch (BuildException e) {
|
|
||||||
// TODO Auto-generated catch block
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
|
|
||||||
return getExtensionToolMap().get(id);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -683,15 +666,7 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
* or {@code null}.
|
* or {@code null}.
|
||||||
*/
|
*/
|
||||||
public static IBuilder getExtensionBuilder(String id) {
|
public static IBuilder getExtensionBuilder(String id) {
|
||||||
try {
|
return getExtensionBuilderMapInternal().get(id);
|
||||||
// Make sure the extensions are loaded
|
|
||||||
loadExtensions();
|
|
||||||
} catch (BuildException e) {
|
|
||||||
// TODO Auto-generated catch block
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
|
|
||||||
return getExtensionBuilderMap().get(id);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IBuilder getExtensionBuilder(IBuilder builder) {
|
public static IBuilder getExtensionBuilder(IBuilder builder) {
|
||||||
|
@ -1735,7 +1710,7 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
* has a reference to it as part of its description.
|
* has a reference to it as part of its description.
|
||||||
*/
|
*/
|
||||||
public static void addExtensionToolChain(ToolChain toolChain) {
|
public static void addExtensionToolChain(ToolChain toolChain) {
|
||||||
IToolChain previous = getExtensionToolChainMap().put(toolChain.getId(), toolChain);
|
IToolChain previous = getExtensionToolChainMapInternal().put(toolChain.getId(), toolChain);
|
||||||
if (previous != null) {
|
if (previous != null) {
|
||||||
// Report error
|
// Report error
|
||||||
ManagedBuildManager.outputDuplicateIdError(
|
ManagedBuildManager.outputDuplicateIdError(
|
||||||
|
@ -1752,7 +1727,7 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
* only once.
|
* only once.
|
||||||
*/
|
*/
|
||||||
public static void addExtensionTool(Tool tool) {
|
public static void addExtensionTool(Tool tool) {
|
||||||
ITool previous = getExtensionToolMap().put(tool.getId(), tool);
|
ITool previous = getExtensionToolMapInternal().put(tool.getId(), tool);
|
||||||
if (previous != null) {
|
if (previous != null) {
|
||||||
// Report error
|
// Report error
|
||||||
ManagedBuildManager.outputDuplicateIdError(
|
ManagedBuildManager.outputDuplicateIdError(
|
||||||
|
@ -1782,7 +1757,7 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
* has a reference to it as part of its description.
|
* has a reference to it as part of its description.
|
||||||
*/
|
*/
|
||||||
public static void addExtensionBuilder(Builder builder) {
|
public static void addExtensionBuilder(Builder builder) {
|
||||||
IBuilder previous = getExtensionBuilderMap().put(builder.getId(), builder);
|
IBuilder previous = getExtensionBuilderMapInternal().put(builder.getId(), builder);
|
||||||
if (previous != null) {
|
if (previous != null) {
|
||||||
// Report error
|
// Report error
|
||||||
ManagedBuildManager.outputDuplicateIdError(
|
ManagedBuildManager.outputDuplicateIdError(
|
||||||
|
@ -2133,7 +2108,7 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
return buildInfo;
|
return buildInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/**
|
||||||
* This method loads all of the managed build system manifest files
|
* This method loads all of the managed build system manifest files
|
||||||
* that have been installed with CDT. An internal hierarchy of
|
* that have been installed with CDT. An internal hierarchy of
|
||||||
* objects is created that contains the information from the manifest
|
* objects is created that contains the information from the manifest
|
||||||
|
@ -2284,19 +2259,19 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Collection<IToolChain> toolChains = getExtensionToolChainMap().values();
|
Collection<ToolChain> toolChains = getExtensionToolChainMapInternal().values();
|
||||||
for (IToolChain toolChain : toolChains) {
|
for (ToolChain toolChain : toolChains) {
|
||||||
try {
|
try {
|
||||||
((ToolChain) toolChain).resolveReferences();
|
toolChain.resolveReferences();
|
||||||
} catch (Exception ex) {
|
} catch (Exception ex) {
|
||||||
// TODO: log
|
// TODO: log
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Collection<ITool> tools = getExtensionToolMap().values();
|
Collection<Tool> tools = getExtensionToolMapInternal().values();
|
||||||
for (ITool tool : tools) {
|
for (Tool tool : tools) {
|
||||||
try {
|
try {
|
||||||
((Tool) tool).resolveReferences();
|
tool.resolveReferences();
|
||||||
} catch (Exception ex) {
|
} catch (Exception ex) {
|
||||||
// TODO: log
|
// TODO: log
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
|
@ -2311,10 +2286,10 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Collection<IBuilder> builders = getExtensionBuilderMap().values();
|
Collection<Builder> builders = getExtensionBuilderMapInternal().values();
|
||||||
for (IBuilder builder : builders) {
|
for (Builder builder : builders) {
|
||||||
try {
|
try {
|
||||||
((Builder) builder).resolveReferences();
|
builder.resolveReferences();
|
||||||
} catch (Exception ex) {
|
} catch (Exception ex) {
|
||||||
// TODO: log
|
// TODO: log
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
|
@ -2384,10 +2359,10 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// The V2 model can also add top-level Tools - they need to be "resolved"
|
// The V2 model can also add top-level Tools - they need to be "resolved"
|
||||||
Collection<ITool> tools = getExtensionToolMap().values();
|
Collection<Tool> tools = getExtensionToolMapInternal().values();
|
||||||
for (ITool tool : tools) {
|
for (Tool tool : tools) {
|
||||||
try {
|
try {
|
||||||
((Tool) tool).resolveReferences();
|
tool.resolveReferences();
|
||||||
} catch (Exception ex) {
|
} catch (Exception ex) {
|
||||||
// TODO: log
|
// TODO: log
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
|
@ -4059,7 +4034,7 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
/* private static List getSortedToolChains(){
|
/* private static List getSortedToolChains(){
|
||||||
if(sortedToolChains == null){
|
if(sortedToolChains == null){
|
||||||
sortedToolChains = new ArrayList();
|
sortedToolChains = new ArrayList();
|
||||||
SortedMap map = getExtensionToolChainMap();
|
SortedMap map = getExtensionToolChainMapInternal();
|
||||||
for(Iterator iter = map.values().iterator(); iter.hasNext();){
|
for(Iterator iter = map.values().iterator(); iter.hasNext();){
|
||||||
ToolChain tc = (ToolChain)iter.next();
|
ToolChain tc = (ToolChain)iter.next();
|
||||||
if(tc.isAbstract())
|
if(tc.isAbstract())
|
||||||
|
@ -4198,31 +4173,31 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
private static HashMap<MatchKey, List<ToolChain>> getSortedToolChains(){
|
private static HashMap<MatchKey<ToolChain>, List<ToolChain>> getSortedToolChains(){
|
||||||
if(fSortedToolChains == null){
|
if(fSortedToolChains == null){
|
||||||
Collection<? extends ToolChain> toolChains = (Collection<? extends ToolChain>)ManagedBuildManager.getExtensionToolChainMap().values();
|
Collection<ToolChain> toolChains = getExtensionToolChainMapInternal().values();
|
||||||
fSortedToolChains = (HashMap)getSortedElements(toolChains);
|
fSortedToolChains = getSortedElements(toolChains);
|
||||||
}
|
}
|
||||||
return fSortedToolChains;
|
return fSortedToolChains;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static HashMap<MatchKey, List<Tool>> getSortedTools(){
|
private static HashMap<MatchKey<Tool>, List<Tool>> getSortedTools(){
|
||||||
if(fSortedTools == null){
|
if(fSortedTools == null){
|
||||||
Collection<? extends Tool> tools = (Collection<? extends Tool>)ManagedBuildManager.getExtensionToolMap().values();
|
Collection<Tool> tools = getExtensionToolMapInternal().values();
|
||||||
fSortedTools = (HashMap)getSortedElements(tools);
|
fSortedTools = getSortedElements(tools);
|
||||||
}
|
}
|
||||||
return fSortedTools;
|
return fSortedTools;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static HashMap<MatchKey, List<Builder>> getSortedBuilders(){
|
private static HashMap<MatchKey<Builder>, List<Builder>> getSortedBuilders(){
|
||||||
if(fSortedBuilders == null){
|
if(fSortedBuilders == null){
|
||||||
Collection<? extends Builder> builders = (Collection<? extends Builder>)ManagedBuildManager.getExtensionBuilderMap().values();
|
Collection<Builder> builders = getExtensionBuilderMapInternal().values();
|
||||||
fSortedBuilders = (HashMap)getSortedElements(builders);
|
fSortedBuilders = getSortedElements(builders);
|
||||||
}
|
}
|
||||||
return fSortedBuilders;
|
return fSortedBuilders;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static <T extends BuildObject & IMatchKeyProvider<T>> HashMap<MatchKey<T>, List<T>> getSortedElements(Collection<? extends T> elements){
|
private static <T extends BuildObject & IMatchKeyProvider<T>> HashMap<MatchKey<T>, List<T>> getSortedElements(Collection<T> elements){
|
||||||
HashMap<MatchKey<T>, List<T>> map = new HashMap<MatchKey<T>, List<T>>();
|
HashMap<MatchKey<T>, List<T>> map = new HashMap<MatchKey<T>, List<T>>();
|
||||||
for (T p : elements) {
|
for (T p : elements) {
|
||||||
MatchKey<T> key = p.getMatchKey();
|
MatchKey<T> key = p.getMatchKey();
|
||||||
|
@ -4246,7 +4221,7 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IToolChain[] getRealToolChains(){
|
public static IToolChain[] getRealToolChains(){
|
||||||
HashMap<MatchKey, List<ToolChain>> map = getSortedToolChains();
|
HashMap<MatchKey<ToolChain>, List<ToolChain>> map = getSortedToolChains();
|
||||||
IToolChain tcs[] = new ToolChain[map.size()];
|
IToolChain tcs[] = new ToolChain[map.size()];
|
||||||
int i = 0;
|
int i = 0;
|
||||||
for (List<ToolChain> list : map.values()) {
|
for (List<ToolChain> list : map.values()) {
|
||||||
|
@ -4256,7 +4231,7 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static ITool[] getRealTools(){
|
public static ITool[] getRealTools(){
|
||||||
HashMap<MatchKey, List<Tool>> map = getSortedTools();
|
HashMap<MatchKey<Tool>, List<Tool>> map = getSortedTools();
|
||||||
Tool ts[] = new Tool[map.size()];
|
Tool ts[] = new Tool[map.size()];
|
||||||
int i = 0;
|
int i = 0;
|
||||||
for (List<Tool> list : map.values()) {
|
for (List<Tool> list : map.values()) {
|
||||||
|
@ -4266,7 +4241,7 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IBuilder[] getRealBuilders(){
|
public static IBuilder[] getRealBuilders(){
|
||||||
HashMap<MatchKey, List<Builder>> map = getSortedBuilders();
|
HashMap<MatchKey<Builder>, List<Builder>> map = getSortedBuilders();
|
||||||
IBuilder bs[] = new Builder[map.size()];
|
IBuilder bs[] = new Builder[map.size()];
|
||||||
int i = 0;
|
int i = 0;
|
||||||
for (List<Builder> list : map.values()) {
|
for (List<Builder> list : map.values()) {
|
||||||
|
@ -4383,7 +4358,7 @@ public class ManagedBuildManager extends AbstractCExtension {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static IToolChain[] getExtensionsToolChains(String propertyType, String propertyValue, boolean supportedPropsOnly){
|
public static IToolChain[] getExtensionsToolChains(String propertyType, String propertyValue, boolean supportedPropsOnly){
|
||||||
HashMap<MatchKey, List<ToolChain>> all = getSortedToolChains();
|
HashMap<MatchKey<ToolChain>, List<ToolChain>> all = getSortedToolChains();
|
||||||
List<IToolChain> result = new ArrayList<IToolChain>();
|
List<IToolChain> result = new ArrayList<IToolChain>();
|
||||||
for (List<ToolChain> list : all.values()) {
|
for (List<ToolChain> list : all.values()) {
|
||||||
IToolChain tc = findToolChain(list, propertyType, propertyValue, supportedPropsOnly);
|
IToolChain tc = findToolChain(list, propertyType, propertyValue, supportedPropsOnly);
|
||||||
|
|
|
@ -1418,7 +1418,7 @@ public class Builder extends HoldsOptions implements IBuilder, IMatchKeyProvider
|
||||||
String high = ManagedBuildManager
|
String high = ManagedBuildManager
|
||||||
.getExtensionBuilderMap().lastKey();
|
.getExtensionBuilderMap().lastKey();
|
||||||
|
|
||||||
SortedMap<String, IBuilder> subMap = null;
|
SortedMap<String, ? extends IBuilder> subMap = null;
|
||||||
if (superClassId.compareTo(high) <= 0) {
|
if (superClassId.compareTo(high) <= 0) {
|
||||||
subMap = ManagedBuildManager.getExtensionBuilderMap().subMap(superClassId, high + "\0"); //$NON-NLS-1$
|
subMap = ManagedBuildManager.getExtensionBuilderMap().subMap(superClassId, high + "\0"); //$NON-NLS-1$
|
||||||
} else {
|
} else {
|
||||||
|
@ -1443,7 +1443,7 @@ public class Builder extends HoldsOptions implements IBuilder, IMatchKeyProvider
|
||||||
String version = ManagedBuildManager
|
String version = ManagedBuildManager
|
||||||
.getVersionFromIdAndVersion(superClassId);
|
.getVersionFromIdAndVersion(superClassId);
|
||||||
|
|
||||||
Collection<IBuilder> c = subMap.values();
|
Collection<? extends IBuilder> c = subMap.values();
|
||||||
IBuilder[] builderElements = c.toArray(new IBuilder[c.size()]);
|
IBuilder[] builderElements = c.toArray(new IBuilder[c.size()]);
|
||||||
|
|
||||||
for (int i = 0; i < builderElements.length; i++) {
|
for (int i = 0; i < builderElements.length; i++) {
|
||||||
|
|
|
@ -3067,10 +3067,9 @@ public class Tool extends HoldsOptions implements ITool, IOptionCategory, IMatch
|
||||||
// If 'getSuperClass()' is null, then there is no tool available in
|
// If 'getSuperClass()' is null, then there is no tool available in
|
||||||
// plugin manifest file with the same 'id' & version.
|
// plugin manifest file with the same 'id' & version.
|
||||||
// Look for the 'versionsSupported' attribute
|
// Look for the 'versionsSupported' attribute
|
||||||
String high = ManagedBuildManager.getExtensionToolMap()
|
String high = ManagedBuildManager.getExtensionToolMap().lastKey();
|
||||||
.lastKey();
|
|
||||||
|
|
||||||
SortedMap<String, ITool> subMap = null;
|
SortedMap<String, ? extends ITool> subMap = null;
|
||||||
if (superClassId.compareTo(high) <= 0) {
|
if (superClassId.compareTo(high) <= 0) {
|
||||||
subMap = ManagedBuildManager.getExtensionToolMap().subMap(
|
subMap = ManagedBuildManager.getExtensionToolMap().subMap(
|
||||||
superClassId, high + "\0"); //$NON-NLS-1$
|
superClassId, high + "\0"); //$NON-NLS-1$
|
||||||
|
|
|
@ -30,7 +30,6 @@ import org.eclipse.cdt.internal.core.cdtvariables.StorableCdtVariables;
|
||||||
import org.eclipse.cdt.managedbuilder.buildproperties.IBuildPropertyType;
|
import org.eclipse.cdt.managedbuilder.buildproperties.IBuildPropertyType;
|
||||||
import org.eclipse.cdt.managedbuilder.buildproperties.IBuildPropertyValue;
|
import org.eclipse.cdt.managedbuilder.buildproperties.IBuildPropertyValue;
|
||||||
import org.eclipse.cdt.managedbuilder.core.IBuildObject;
|
import org.eclipse.cdt.managedbuilder.core.IBuildObject;
|
||||||
import org.eclipse.cdt.managedbuilder.core.IBuildPropertiesRestriction;
|
|
||||||
import org.eclipse.cdt.managedbuilder.core.IBuilder;
|
import org.eclipse.cdt.managedbuilder.core.IBuilder;
|
||||||
import org.eclipse.cdt.managedbuilder.core.IConfiguration;
|
import org.eclipse.cdt.managedbuilder.core.IConfiguration;
|
||||||
import org.eclipse.cdt.managedbuilder.core.IFolderInfo;
|
import org.eclipse.cdt.managedbuilder.core.IFolderInfo;
|
||||||
|
@ -57,7 +56,7 @@ import org.eclipse.core.runtime.IPath;
|
||||||
import org.eclipse.core.runtime.Platform;
|
import org.eclipse.core.runtime.Platform;
|
||||||
import org.osgi.framework.Version;
|
import org.osgi.framework.Version;
|
||||||
|
|
||||||
public class ToolChain extends HoldsOptions implements IToolChain, IBuildPropertiesRestriction, IMatchKeyProvider<ToolChain>, IRealBuildObjectAssociation {
|
public class ToolChain extends HoldsOptions implements IToolChain, IMatchKeyProvider<ToolChain>, IRealBuildObjectAssociation {
|
||||||
|
|
||||||
private static final String EMPTY_STRING = new String();
|
private static final String EMPTY_STRING = new String();
|
||||||
|
|
||||||
|
@ -1870,10 +1869,9 @@ public class ToolChain extends HoldsOptions implements IToolChain, IBuildPropert
|
||||||
// If 'getSuperClass()' is null, then there is no toolchain available in
|
// If 'getSuperClass()' is null, then there is no toolchain available in
|
||||||
// plugin manifest file with the 'id' & version.
|
// plugin manifest file with the 'id' & version.
|
||||||
// Look for the 'versionsSupported' attribute
|
// Look for the 'versionsSupported' attribute
|
||||||
String high = ManagedBuildManager
|
String high = ManagedBuildManager.getExtensionToolChainMap().lastKey();
|
||||||
.getExtensionToolChainMap().lastKey();
|
|
||||||
|
|
||||||
SortedMap<String, IToolChain> subMap = null;
|
SortedMap<String, ? extends IToolChain> subMap = null;
|
||||||
if (superClassId.compareTo(high) <= 0) {
|
if (superClassId.compareTo(high) <= 0) {
|
||||||
subMap = ManagedBuildManager.getExtensionToolChainMap().subMap(
|
subMap = ManagedBuildManager.getExtensionToolChainMap().subMap(
|
||||||
superClassId, high + "\0"); //$NON-NLS-1$
|
superClassId, high + "\0"); //$NON-NLS-1$
|
||||||
|
@ -1895,7 +1893,7 @@ public class ToolChain extends HoldsOptions implements IToolChain, IBuildPropert
|
||||||
String baseId = ManagedBuildManager.getIdFromIdAndVersion(superClassId);
|
String baseId = ManagedBuildManager.getIdFromIdAndVersion(superClassId);
|
||||||
String version = getVersionFromId().toString();
|
String version = getVersionFromId().toString();
|
||||||
|
|
||||||
Collection<IToolChain> c = subMap.values();
|
Collection<? extends IToolChain> c = subMap.values();
|
||||||
IToolChain[] toolChainElements = c.toArray(new IToolChain[c.size()]);
|
IToolChain[] toolChainElements = c.toArray(new IToolChain[c.size()]);
|
||||||
|
|
||||||
for (int i = 0; i < toolChainElements.length; i++) {
|
for (int i = 0; i < toolChainElements.length; i++) {
|
||||||
|
|
Loading…
Add table
Reference in a new issue