From 49b52caf42ba9eb1219a337c6ec8a2c6146ed6d9 Mon Sep 17 00:00:00 2001 From: Andrew Gvozdev Date: Thu, 10 Mar 2011 21:33:57 +0000 Subject: [PATCH] bug 319512: Missing type arguments on managedbuilder.core --- .../managedbuilder/internal/core/Builder.java | 24 ++++++++++------- .../managedbuilder/internal/core/Tool.java | 27 +++++++++---------- .../internal/core/ToolChain.java | 6 ++--- 3 files changed, 30 insertions(+), 27 deletions(-) diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Builder.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Builder.java index 77422008558..0fba97e2a68 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Builder.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Builder.java @@ -133,7 +133,7 @@ public class Builder extends HoldsOptions implements IBuilder, IMatchKeyProvider private Boolean fSupportsCustomizedBuild; - private List identicalList; + private List identicalList; private ICOutputEntry[] outputEntries; @@ -229,6 +229,11 @@ public class Builder extends HoldsOptions implements IBuilder, IMatchKeyProvider loadFromProject(element); } + @SuppressWarnings("unchecked") + private HashMap cloneMap(HashMap map) { + return (HashMap) map.clone(); + } + /** * Create a Builder based upon an existing builder. * @@ -289,11 +294,11 @@ public class Builder extends HoldsOptions implements IBuilder, IMatchKeyProvider if(builder.customizedErrorParserIds != null) customizedErrorParserIds = builder.customizedErrorParserIds.clone(); if(builder.customizedEnvironment != null) - customizedEnvironment = (HashMap) builder.customizedEnvironment.clone(); + customizedEnvironment = cloneMap(builder.customizedEnvironment); appendEnvironment = builder.appendEnvironment; buildPath = builder.buildPath; if(builder.customBuildProperties != null) - customBuildProperties = (HashMap) builder.customBuildProperties.clone(); + customBuildProperties = cloneMap(builder.customBuildProperties); @@ -393,14 +398,14 @@ public class Builder extends HoldsOptions implements IBuilder, IMatchKeyProvider if(builder.customizedErrorParserIds != null) customizedErrorParserIds = builder.customizedErrorParserIds.clone(); if(builder.customizedEnvironment != null) - customizedEnvironment = (HashMap) builder.customizedEnvironment.clone(); + customizedEnvironment = cloneMap(builder.customizedEnvironment); appendEnvironment = builder.appendEnvironment; if(isBuildPathEditable()){ if(!getBuildPath().equals(builder.getBuildPath())) setBuildPath(builder.getBuildPath()); } if(builder.customBuildProperties != null) - customBuildProperties = (HashMap) builder.customBuildProperties.clone(); + customBuildProperties = cloneMap(builder.customBuildProperties); if(allBuildSettings){ if(!getCommand().equals(builder.getCommand())) @@ -2128,14 +2133,13 @@ public class Builder extends HoldsOptions implements IBuilder, IMatchKeyProvider public Map getEnvironment() { if(customizedEnvironment != null) - return (HashMap)customizedEnvironment.clone(); + return cloneMap(customizedEnvironment); return null; } public Map getExpandedEnvironment() throws CoreException { if(customizedEnvironment != null){ - @SuppressWarnings("unchecked") - Map expanded = (HashMap)customizedEnvironment.clone(); + Map expanded = cloneMap(customizedEnvironment); ICdtVariableManager mngr = CCorePlugin.getDefault().getCdtVariableManager(); String separator = CCorePlugin.getDefault().getBuildEnvironmentManager().getDefaultDelimiter(); ICConfigurationDescription cfgDes = ManagedBuildManager.getDescriptionForConfiguration(getParent().getParent()); @@ -2330,7 +2334,7 @@ public class Builder extends HoldsOptions implements IBuilder, IMatchKeyProvider return new MatchKey(this); } - public void setIdenticalList(List list) { + public void setIdenticalList(List list) { identicalList = list; } @@ -2343,7 +2347,7 @@ public class Builder extends HoldsOptions implements IBuilder, IMatchKeyProvider return name; } - public List getIdenticalList() { + public List getIdenticalList() { return identicalList; } diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Tool.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Tool.java index f138b544f2a..7701f917a0b 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Tool.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/Tool.java @@ -163,7 +163,7 @@ public class Tool extends HoldsOptions implements ITool, IOptionCategory, IMatch private HashMap typeToDataMap = new HashMap(2); private boolean fDataMapInited; - private List identicalList; + private List identicalList; private HashMap discoveredInfoMap = new HashMap(2); private String scannerConfigDiscoveryProfileId; @@ -368,7 +368,6 @@ public class Tool extends HoldsOptions implements ITool, IOptionCategory, IMatch setSuperClassInternal(toolSuperClass); } - @SuppressWarnings("unchecked") public Tool(IBuildObject parent, String toolSuperClassId, String Id, String name, Tool tool){ super(resolvedDefault); this.parent = parent; @@ -466,7 +465,9 @@ public class Tool extends HoldsOptions implements ITool, IOptionCategory, IMatch super.copyChildren(tool); // Clone the children if (tool.inputTypeList != null) { - discoveredInfoMap = (HashMap)tool.discoveredInfoMap.clone(); + @SuppressWarnings("unchecked") + HashMap clone = (HashMap)tool.discoveredInfoMap.clone(); + discoveredInfoMap = clone; for (InputType inputType : tool.getInputTypeList()) { PathInfoCache cache = discoveredInfoMap.remove(getTypeKey(inputType)); int nnn = ManagedBuildManager.getRandomNumber(); @@ -1833,7 +1834,6 @@ public class Tool extends HoldsOptions implements ITool, IOptionCategory, IMatch /* (non-Javadoc) * @see org.eclipse.cdt.managedbuilder.core.ITool#getAdditionalDependencies() */ - @SuppressWarnings("unchecked") public IPath[] getAdditionalDependencies() { List allDeps = new ArrayList(); IInputType[] types = getInputTypes(); @@ -1862,6 +1862,7 @@ public class Tool extends HoldsOptions implements ITool, IOptionCategory, IMatch optType == IOption.LIBRARY_FILES || optType == IOption.MACRO_FILES ) { + @SuppressWarnings("unchecked") List inputNames = (List)option.getValue(); filterValues(optType, inputNames); for (String s : inputNames) @@ -3354,7 +3355,6 @@ public class Tool extends HoldsOptions implements ITool, IOptionCategory, IMatch return typeToDataMap.get(type); } - @SuppressWarnings("unchecked") private void initDataMap(){ if(fDataMapInited) return; @@ -3380,6 +3380,7 @@ public class Tool extends HoldsOptions implements ITool, IOptionCategory, IMatch iter.set(getEditableInputType(type)); } + @SuppressWarnings("unchecked") Map map = (Map)typeToDataMap.clone(); for(IInputType type : types){ CLanguageData data = map.remove(type); @@ -3641,7 +3642,7 @@ public class Tool extends HoldsOptions implements ITool, IOptionCategory, IMatch return new MatchKey(this); } - public void setIdenticalList(List list) { + public void setIdenticalList(List list) { identicalList = list; } @@ -3689,7 +3690,7 @@ public class Tool extends HoldsOptions implements ITool, IOptionCategory, IMatch this.parent = ((IFolderInfo)rcInfo).getToolChain(); } - public List getIdenticalList() { + public List getIdenticalList() { return identicalList; } @@ -3985,8 +3986,7 @@ public class Tool extends HoldsOptions implements ITool, IOptionCategory, IMatch return list.toArray(new Option[list.size()]); } - @SuppressWarnings("unchecked") - public void filterValues(int type, List values){ + public void filterValues(int type, List values){ if(values.size() == 0) return; @@ -3998,15 +3998,14 @@ public class Tool extends HoldsOptions implements ITool, IOptionCategory, IMatch } if(filterSet.size() != 0){ - Object oVal; - for(int i = 0; i < values.size(); i++){ - oVal = values.get(i); + for (Iterator iterator = values.iterator(); iterator.hasNext();) { + String oVal = iterator.next(); if(type == IOption.PREPROCESSOR_SYMBOLS){ - String[] nameVal = BuildEntryStorage.macroNameValueFromValue((String)oVal); + String[] nameVal = BuildEntryStorage.macroNameValueFromValue(oVal); oVal = nameVal[0]; } if(filterSet.contains(oVal)) - values.remove(i); + iterator.remove(); } } } diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ToolChain.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ToolChain.java index ca11dcc4895..78df6d4de61 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ToolChain.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/core/ToolChain.java @@ -115,7 +115,7 @@ public class ToolChain extends HoldsOptions implements IToolChain, IBuildPropert private boolean rebuildState; private BooleanExpressionApplicabilityCalculator booleanExpressionCalculator; - private List identicalList; + private List identicalList; private Set unusedChildrenSet; @@ -2249,7 +2249,7 @@ public class ToolChain extends HoldsOptions implements IToolChain, IBuildPropert return rTc == ManagedBuildManager.getRealToolChain(tc); } - public List getIdenticalList(){ + public List getIdenticalList(){ return identicalList;//;(ArrayList)identicalToolChainsList.clone(); } @@ -2301,7 +2301,7 @@ public class ToolChain extends HoldsOptions implements IToolChain, IBuildPropert return new MatchKey(this); } - public void setIdenticalList(List list) { + public void setIdenticalList(List list) { identicalList = list; }