mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-06-07 09:46:02 +02:00
bug 319512: Missing type arguments on managedbuilder.core
This commit is contained in:
parent
945f453d62
commit
f4220287f0
2 changed files with 17 additions and 13 deletions
|
@ -363,7 +363,7 @@ public class TcModificationUtil {
|
||||||
return set;
|
return set;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Map<IRealBuildObjectAssociation, IRealBuildObjectAssociation> getRealToObjectsMap(IRealBuildObjectAssociation[] objs, Map<IRealBuildObjectAssociation, IRealBuildObjectAssociation> map){
|
public static Map<? extends IRealBuildObjectAssociation, ? extends IRealBuildObjectAssociation> getRealToObjectsMap(IRealBuildObjectAssociation[] objs, Map<IRealBuildObjectAssociation, IRealBuildObjectAssociation> map){
|
||||||
if(map == null)
|
if(map == null)
|
||||||
map = new LinkedHashMap<IRealBuildObjectAssociation, IRealBuildObjectAssociation>();
|
map = new LinkedHashMap<IRealBuildObjectAssociation, IRealBuildObjectAssociation>();
|
||||||
for(int i = 0; i < objs.length; i++){
|
for(int i = 0; i < objs.length; i++){
|
||||||
|
|
|
@ -16,7 +16,6 @@ import java.util.Collection;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.Iterator;
|
|
||||||
import java.util.LinkedHashMap;
|
import java.util.LinkedHashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
@ -384,19 +383,21 @@ public abstract class ToolListModification implements IToolListModification {
|
||||||
public ToolListModification(ResourceInfo rcInfo, ToolListModification base){
|
public ToolListModification(ResourceInfo rcInfo, ToolListModification base){
|
||||||
fRcInfo = rcInfo;
|
fRcInfo = rcInfo;
|
||||||
Tool[] initialTools = (Tool[])rcInfo.getTools();
|
Tool[] initialTools = (Tool[])rcInfo.getTools();
|
||||||
Map initRealToToolMap = TcModificationUtil.getRealToObjectsMap(initialTools, new LinkedHashMap());
|
@SuppressWarnings("unchecked")
|
||||||
|
Map<Tool, Tool> initRealToToolMap = (Map<Tool, Tool>) TcModificationUtil.getRealToObjectsMap(initialTools, null);
|
||||||
Tool[] updatedTools = base.getTools(true, false);
|
Tool[] updatedTools = base.getTools(true, false);
|
||||||
Map updatedRealToToolMap = TcModificationUtil.getRealToObjectsMap(updatedTools, new LinkedHashMap());
|
@SuppressWarnings("unchecked")
|
||||||
for(Iterator iter = updatedRealToToolMap.entrySet().iterator(); iter.hasNext(); ){
|
Map<Tool, Tool> updatedRealToToolMap = (Map<Tool, Tool>) TcModificationUtil.getRealToObjectsMap(updatedTools, null);
|
||||||
Map.Entry entry = (Map.Entry)iter.next();
|
Set<Entry<Tool, Tool>> entrySet = updatedRealToToolMap.entrySet();
|
||||||
Object real = entry.getKey();
|
for (Entry<Tool, Tool> entry : entrySet) {
|
||||||
Object initial = initRealToToolMap.get(real);
|
Tool real = entry.getKey();
|
||||||
|
Tool initial = initRealToToolMap.get(real);
|
||||||
if(initial != null){
|
if(initial != null){
|
||||||
entry.setValue(initial);
|
entry.setValue(initial);
|
||||||
} else {
|
} else {
|
||||||
IRealBuildObjectAssociation updated = (IRealBuildObjectAssociation)entry.getValue();
|
Tool updated = entry.getValue();
|
||||||
if(!updated.isExtensionBuildObject()){
|
if(!updated.isExtensionBuildObject()){
|
||||||
updated = updated.getExtensionObject();
|
updated = (Tool) updated.getExtensionObject();
|
||||||
entry.setValue(updated);
|
entry.setValue(updated);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -656,7 +657,8 @@ public abstract class ToolListModification implements IToolListModification {
|
||||||
clearToolInfo(map.values().toArray(new Tool[map.size()]));
|
clearToolInfo(map.values().toArray(new Tool[map.size()]));
|
||||||
|
|
||||||
PerTypeMapStorage storage = getCompleteObjectStore();
|
PerTypeMapStorage storage = getCompleteObjectStore();
|
||||||
Map toolMap = storage.getMap(IRealBuildObjectAssociation.OBJECT_TOOL, true);
|
@SuppressWarnings("unchecked")
|
||||||
|
Map<Tool, Tool> toolMap = storage.getMap(IRealBuildObjectAssociation.OBJECT_TOOL, true);
|
||||||
if(rmSet != null)
|
if(rmSet != null)
|
||||||
TcModificationUtil.removePaths(toolMap, realRemoved, rmSet);
|
TcModificationUtil.removePaths(toolMap, realRemoved, rmSet);
|
||||||
if(addSet != null)
|
if(addSet != null)
|
||||||
|
@ -701,8 +703,10 @@ public abstract class ToolListModification implements IToolListModification {
|
||||||
}
|
}
|
||||||
|
|
||||||
filteredTools = filterTools(allTools);
|
filteredTools = filterTools(allTools);
|
||||||
Map filteredMap = TcModificationUtil.getRealToObjectsMap(filteredTools, null);
|
@SuppressWarnings("unchecked")
|
||||||
Map allMap = TcModificationUtil.getRealToObjectsMap(allTools, null);
|
Map<Tool, Tool> filteredMap = (Map<Tool, Tool>) TcModificationUtil.getRealToObjectsMap(filteredTools, null);
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
Map<Tool, Tool> allMap = (Map<Tool, Tool>) TcModificationUtil.getRealToObjectsMap(allTools, null);
|
||||||
allMap.keySet().removeAll(filteredMap.keySet());
|
allMap.keySet().removeAll(filteredMap.keySet());
|
||||||
fFilteredOutTools = allMap;
|
fFilteredOutTools = allMap;
|
||||||
// tools = filteredTools;
|
// tools = filteredTools;
|
||||||
|
|
Loading…
Add table
Reference in a new issue