From 945f453d6216bac21c5d3856a355bb60dbf8e2d3 Mon Sep 17 00:00:00 2001 From: Andrew Gvozdev Date: Sat, 2 Oct 2010 05:31:04 +0000 Subject: [PATCH] bug 319512: Missing type arguments on managedbuilder.core --- .../ConfigurationModification.java | 3 ++- .../FolderInfoModification.java | 17 ++++++++++----- .../tcmodification/PerTypeSetStorage.java | 4 ++-- .../tcmodification/TcModificationUtil.java | 21 ++++++++++--------- .../ToolChainModificationManager.java | 4 ++-- .../tcmodification/ToolListModification.java | 11 +++++----- 6 files changed, 35 insertions(+), 25 deletions(-) diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/ConfigurationModification.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/ConfigurationModification.java index f145693e4d2..6aec9e33358 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/ConfigurationModification.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/ConfigurationModification.java @@ -130,7 +130,8 @@ public class ConfigurationModification extends FolderInfoModification implements fInCompatibleBuilders = new HashMap(); ConflictMatchSet conflicts = getParentConflictMatchSet(); IBuilder sysBs[] = getAllSysBuilders(); - Map> conflictMap = conflicts.fObjToConflictListMap; + @SuppressWarnings("unchecked") + Map> conflictMap = (Map>) conflicts.fObjToConflictListMap; for(int i = 0; i < sysBs.length; i++){ Builder b = (Builder) sysBs[i]; List l = conflictMap.get(b); diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/FolderInfoModification.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/FolderInfoModification.java index 549de401df8..561ca6f53c1 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/FolderInfoModification.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/FolderInfoModification.java @@ -174,7 +174,8 @@ public class FolderInfoModification extends ToolListModification implements IFol ConflictMatchSet parentConflicts = getParentConflictMatchSet(); ToolChain sysTCs[] = (ToolChain[])getAllSysToolChains(); - Map> conflictMap = parentConflicts.fObjToConflictListMap; + @SuppressWarnings("unchecked") + Map> conflictMap = (Map>) parentConflicts.fObjToConflictListMap; for (ToolChain tc : sysTCs) { List l = conflictMap.get(tc); ToolChainCompatibilityInfoElement info = new ToolChainCompatibilityInfoElement(tc, l); @@ -309,8 +310,10 @@ public class FolderInfoModification extends ToolListModification implements IFol TreeMap pathMap = getCompletePathMapStorage(); PerTypeSetStorage oSet = pathMap.get(path); - Set toolSet = oSet.getSet(IRealBuildObjectAssociation.OBJECT_TOOL, false); - Set tcSet = oSet.getSet(IRealBuildObjectAssociation.OBJECT_TOOLCHAIN, false); + @SuppressWarnings("unchecked") + Set toolSet = (Set) oSet.getSet(IRealBuildObjectAssociation.OBJECT_TOOL, false); + @SuppressWarnings("unchecked") + Set tcSet = (Set) oSet.getSet(IRealBuildObjectAssociation.OBJECT_TOOLCHAIN, false); ToolChain curTc = tcSet.iterator().next(); @@ -359,7 +362,9 @@ public class FolderInfoModification extends ToolListModification implements IFol for (Entry entry : entrySet) { PerTypeSetStorage cst = entry.getValue(); + @SuppressWarnings("unchecked") Set ctc = (Set) cst.getSet(IRealBuildObjectAssociation.OBJECT_TOOLCHAIN, false); + @SuppressWarnings("unchecked") Set ct = (Set) cst.getSet(IRealBuildObjectAssociation.OBJECT_TOOL, false); @@ -384,8 +389,10 @@ public class FolderInfoModification extends ToolListModification implements IFol ToolChainApplicabilityPaths tcApplicability = getToolChainApplicabilityPaths(); PerTypeMapStorage storage = getCompleteObjectStore(); - Map tcMap = storage.getMap(IRealBuildObjectAssociation.OBJECT_TOOLCHAIN, false); - Map toolMap = storage.getMap(IRealBuildObjectAssociation.OBJECT_TOOL, false); + @SuppressWarnings("unchecked") + Map> tcMap = storage.getMap(IRealBuildObjectAssociation.OBJECT_TOOLCHAIN, false); + @SuppressWarnings("unchecked") + Map> toolMap = storage.getMap(IRealBuildObjectAssociation.OBJECT_TOOL, false); TcModificationUtil.removePaths(tcMap, fRealToolChain, tcApplicability.fFolderInfoPaths); diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/PerTypeSetStorage.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/PerTypeSetStorage.java index 6b74fe7f334..0d3bb706c4b 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/PerTypeSetStorage.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/PerTypeSetStorage.java @@ -18,7 +18,7 @@ import org.eclipse.cdt.managedbuilder.internal.core.IRealBuildObjectAssociation; public class PerTypeSetStorage implements Cloneable { private ObjectTypeBasedStorage fStorage = new ObjectTypeBasedStorage(); - public Set getSet(int type, boolean create){ + public Set getSet(int type, boolean create){ Set set = (Set)fStorage.get(type); if(set == null && create){ set = createSet(null); @@ -63,7 +63,7 @@ public class PerTypeSetStorage implements Cloneable { for(int i = 0; i < types.length; i++){ @SuppressWarnings("unchecked") Set o = (Set) fStorage.get(types[i]); - if(o != null && !((Set)o).isEmpty()) + if(o != null && !o.isEmpty()) return false; } return true; diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/TcModificationUtil.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/TcModificationUtil.java index c1b5a2227a8..170295719a9 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/TcModificationUtil.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/TcModificationUtil.java @@ -525,26 +525,27 @@ public class TcModificationUtil { public static TreeMap createPathMap(PerTypeMapStorage storage){ int[] types = ObjectTypeBasedStorage.getSupportedObjectTypes(); - TreeMap result = new TreeMap(PathComparator.INSTANCE); + TreeMap result = new TreeMap(PathComparator.INSTANCE); for(int i = 0; i < types.length; i++){ int type = types[i]; - Map map = storage.getMap(type, false); + Map> map = storage.getMap(type, false); if(map == null) continue; - for(Iterator iter = map.entrySet().iterator(); iter.hasNext(); ){ - Map.Entry entry = (Map.Entry)iter.next(); - SortedSet pathSet = (SortedSet)entry.getValue(); - - for(Iterator pathIter = pathSet.iterator(); pathIter.hasNext(); ){ - Object path = pathIter.next(); - PerTypeSetStorage oset = (PerTypeSetStorage)result.get(path); + Set>> entrySet = map.entrySet(); + for (Entry> entry : entrySet) { + IRealBuildObjectAssociation pathKey = entry.getKey(); + Set pathSet = entry.getValue(); + for (IPath path : pathSet) { + PerTypeSetStorage oset = result.get(path); if(oset == null){ oset = new PerTypeSetStorage(); result.put(path, oset); } - oset.getSet(type, true).add(entry.getKey()); + @SuppressWarnings("unchecked") + Set set = (Set) oset.getSet(type, true); + set.add(pathKey); } } } diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/ToolChainModificationManager.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/ToolChainModificationManager.java index c036c832a15..f85569ac569 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/ToolChainModificationManager.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/ToolChainModificationManager.java @@ -175,9 +175,9 @@ public class ToolChainModificationManager implements public static class ConflictMatchSet { ConflictMatch[] fConflicts; - Map fObjToConflictListMap; + Map> fObjToConflictListMap; - ConflictMatchSet(ConflictMatch[] coflicts, Map objToConflictMap){ + ConflictMatchSet(ConflictMatch[] coflicts, Map> objToConflictMap){ fConflicts = coflicts; fObjToConflictListMap = objToConflictMap; } diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/ToolListModification.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/ToolListModification.java index 70d2b2faa6d..6aa1303bb08 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/ToolListModification.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/tcmodification/ToolListModification.java @@ -180,7 +180,8 @@ public abstract class ToolListModification implements IToolListModification { fCompatibleTools = new HashMap(); fInCompatibleTools = new HashMap(); Tool sysTools[] = getTools(false, true); - Map> conflictMap = conflicts.fObjToConflictListMap; + @SuppressWarnings("unchecked") + Map> conflictMap = (Map>) conflicts.fObjToConflictListMap; for(int i = 0; i < sysTools.length; i++){ Tool t = sysTools[i]; List l = conflictMap.get(t); @@ -528,7 +529,7 @@ public abstract class ToolListModification implements IToolListModification { PerTypeSetStorage storage = entry.getValue(); for(int i = 0; i < types.length; i++){ type = types[i]; - Set set = storage.getSet(type, false); + Set set = storage.getSet(type, false); if(set != null){ apply(rcInfo, type, set); } @@ -536,7 +537,7 @@ public abstract class ToolListModification implements IToolListModification { } } - private void apply(ResourceInfo rcInfo, int type, Set set) throws CoreException { + private void apply(ResourceInfo rcInfo, int type, Set set) throws CoreException { switch(type){ case IRealBuildObjectAssociation.OBJECT_TOOL: ToolListModificationInfo info = rcInfo == fRcInfo ? getModificationInfo() : @@ -574,8 +575,8 @@ public abstract class ToolListModification implements IToolListModification { } public IToolModification[] getProjectToolModifications() { - Map map = getMap(true); - return (ProjToolCompatibilityStatusInfo[])map.values().toArray(new ProjToolCompatibilityStatusInfo[map.size()]); + Map map = getMap(true); + return map.values().toArray(new ProjToolCompatibilityStatusInfo[map.size()]); } public ITool[] getProjectTools() {