From a6f057199a714206756afbc554f334d047f406fb Mon Sep 17 00:00:00 2001 From: Andrew Gvozdev Date: Mon, 22 Apr 2013 12:19:42 -0400 Subject: [PATCH] Cosmetics/JavaDoc. --- .../MakeConfigurationDataProvider.java | 52 ++-- .../ConfigurationDataProvider.java | 137 +++++----- .../extension/CConfigurationDataProvider.java | 145 ++++++----- .../CDefaultConfigurationDataProvider.java | 81 +++--- .../PathEntryConfigurationDataProvider.java | 243 ++++++++---------- 5 files changed, 314 insertions(+), 344 deletions(-) diff --git a/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/dataprovider/MakeConfigurationDataProvider.java b/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/dataprovider/MakeConfigurationDataProvider.java index a4558200d73..068e4c45199 100644 --- a/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/dataprovider/MakeConfigurationDataProvider.java +++ b/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/dataprovider/MakeConfigurationDataProvider.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2007, 2010 Intel Corporation and others. + * Copyright (c) 2007, 2013 Intel Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -17,8 +17,8 @@ import org.eclipse.cdt.core.settings.model.extension.impl.CDefaultConfigurationD import org.eclipse.cdt.core.settings.model.util.CDataSerializer; import org.eclipse.cdt.core.settings.model.util.UserAndDiscoveredEntryDataSerializer; import org.eclipse.cdt.make.internal.core.scannerconfig.CDataDiscoveredInfoCalculator; -import org.eclipse.cdt.make.internal.core.scannerconfig.CDataDiscoveredInfoProcessor; import org.eclipse.cdt.make.internal.core.scannerconfig.CDataDiscoveredInfoCalculator.DiscoveredSettingInfo; +import org.eclipse.cdt.make.internal.core.scannerconfig.CDataDiscoveredInfoProcessor; import org.eclipse.core.resources.IProject; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IProgressMonitor; @@ -40,46 +40,42 @@ public class MakeConfigurationDataProvider extends CDefaultConfigurationDataProv protected String getStorageId() { return STORAGE_ID; } - - @Override - public CConfigurationData applyConfiguration( - ICConfigurationDescription des, - ICConfigurationDescription baseDescription, - CConfigurationData base, IProgressMonitor monitor) - throws CoreException { - CConfigurationData result = super.applyConfiguration(des, baseDescription, base, monitor); - if(!des.isPreferenceConfiguration()) - updateDiscoveredInfo(des.getProjectDescription().getProject(), result); - return result; - } @Override - public CConfigurationData loadConfiguration(ICConfigurationDescription des, + public CConfigurationData applyConfiguration(ICConfigurationDescription cfgDescription, + ICConfigurationDescription baseCfgDescription, CConfigurationData baseData, IProgressMonitor monitor) throws CoreException { - CConfigurationData result = super.loadConfiguration(des, monitor); - if(!des.isPreferenceConfiguration()) - updateDiscoveredInfo(des.getProjectDescription().getProject(), result); + + CConfigurationData result = super.applyConfiguration(cfgDescription, baseCfgDescription, baseData, monitor); + if(!cfgDescription.isPreferenceConfiguration()) + updateDiscoveredInfo(cfgDescription.getProjectDescription().getProject(), result); return result; } - protected void updateDiscoveredInfo(IProject project, CConfigurationData cfgData){ + @Override + public CConfigurationData loadConfiguration(ICConfigurationDescription cfgDescription, IProgressMonitor monitor) throws CoreException { + CConfigurationData result = super.loadConfiguration(cfgDescription, monitor); + if(!cfgDescription.isPreferenceConfiguration()) + updateDiscoveredInfo(cfgDescription.getProjectDescription().getProject(), result); + return result; + } + + protected void updateDiscoveredInfo(IProject project, CConfigurationData cfgData) { updateDiscoveredInfo(project, cfgData, getInfoCalculator(), getInfoProcessor()); } - + public static void updateDiscoveredInfo(IProject project, CConfigurationData cfgData, - CDataDiscoveredInfoCalculator calculator, - CDataDiscoveredInfoProcessor processor){ - + CDataDiscoveredInfoCalculator calculator, CDataDiscoveredInfoProcessor processor) { + DiscoveredSettingInfo dsInfo = calculator.getSettingInfos(project, cfgData); - processor.applyDiscoveredInfo(cfgData, dsInfo); } - - protected CDataDiscoveredInfoProcessor getInfoProcessor(){ + + protected CDataDiscoveredInfoProcessor getInfoProcessor( ){ return MakeDiscoveredInfoProcessor.getDefault(); } - - protected CDataDiscoveredInfoCalculator getInfoCalculator(){ + + protected CDataDiscoveredInfoCalculator getInfoCalculator() { return CDataDiscoveredInfoCalculator.getDefault(); } diff --git a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/ConfigurationDataProvider.java b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/ConfigurationDataProvider.java index 5c10adc1efb..c778edd492c 100644 --- a/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/ConfigurationDataProvider.java +++ b/build/org.eclipse.cdt.managedbuilder.core/src/org/eclipse/cdt/managedbuilder/internal/dataprovider/ConfigurationDataProvider.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2007, 2012 Intel Corporation and others. + * Copyright (c) 2007, 2013 Intel Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -102,7 +102,7 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem try { IProjectDescription eDes = fProject.getDescription(); if(BuilderFactory.applyBuilder(eDes, fBuilder) == BuilderFactory.CMD_CHANGED) { - fProject.setDescription(eDes, monitor); + fProject.setDescription(eDes, monitor); } } catch (Exception e){ ManagedBuilderCorePlugin.log(e); @@ -110,9 +110,11 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem } } - static BuildConfigurationData writeConfiguration(ICConfigurationDescription cfgDescription, - BuildConfigurationData base) throws CoreException { - BuildConfigurationData appliedCfg = base; + + static BuildConfigurationData writeConfiguration(ICConfigurationDescription cfgDescription, BuildConfigurationData baseData) + throws CoreException { + + BuildConfigurationData appliedCfg = baseData; ICStorageElement rootElement = cfgDescription.getStorage(BUILD_SYSTEM_DATA_MODULE_NAME, true); rootElement.clear(); rootElement.setAttribute(VERSION_ATTRIBUTE, ManagedBuildManager.getVersion().toString()); @@ -132,12 +134,10 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem return appliedCfg; } - protected CConfigurationData applyPreferences( - ICConfigurationDescription cfgDescription, CConfigurationData base) throws CoreException{ + protected CConfigurationData applyPreferences(ICConfigurationDescription cfgDescription, CConfigurationData baseData) throws CoreException { + BuildConfigurationData appliedCfg = writeConfiguration(cfgDescription, (BuildConfigurationData)baseData); - BuildConfigurationData appliedCfg = writeConfiguration(cfgDescription, (BuildConfigurationData)base); - - IConfiguration cfg = ((BuildConfigurationData)base).getConfiguration(); + IConfiguration cfg = ((BuildConfigurationData)baseData).getConfiguration(); try { CfgScannerConfigInfoFactory2.savePreference(cfg); } catch (CoreException e){ @@ -148,17 +148,15 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem } @Override - public CConfigurationData applyConfiguration( - ICConfigurationDescription cfgDescription, - ICConfigurationDescription baseCfgDescription, - CConfigurationData base, - IModificationContext context, - IProgressMonitor monitor) - throws CoreException { - if(cfgDescription.isPreferenceConfiguration()) - return applyPreferences(cfgDescription, base); + public CConfigurationData applyConfiguration(ICConfigurationDescription cfgDescription, + ICConfigurationDescription baseCfgDescription, CConfigurationData baseData, + IModificationContext context, IProgressMonitor monitor) throws CoreException { - BuildConfigurationData baseCfgData = (BuildConfigurationData)base; + if (cfgDescription.isPreferenceConfiguration()) { + return applyPreferences(cfgDescription, baseData); + } + + BuildConfigurationData baseCfgData = (BuildConfigurationData)baseData; IConfiguration baseCfg = baseCfgData.getConfiguration(); BuildConfigurationData appliedCfg; if(context.isBaseDataCached() && !baseCfg.isDirty()){ @@ -208,20 +206,16 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem cfgDescription.setSessionProperty(CFG_PERSISTED_PROPERTY, Boolean.TRUE); } - private static void writeManagedProjectInfo(ICProjectDescription des, - ManagedProject mProj) throws CoreException { - ICStorageElement rootElement = des.getStorage(BUILD_SYSTEM_DATA_MODULE_NAME, true); + private static void writeManagedProjectInfo(ICProjectDescription prjDescription, ManagedProject mProj) throws CoreException { + ICStorageElement rootElement = prjDescription.getStorage(BUILD_SYSTEM_DATA_MODULE_NAME, true); rootElement.clear(); rootElement.setAttribute(VERSION_ATTRIBUTE, ManagedBuildManager.getVersion().toString()); ICStorageElement mProjElem = rootElement.createChild(IManagedProject.MANAGED_PROJECT_ELEMENT_NAME); mProj.serializeProjectInfo(mProjElem); } - - protected CConfigurationData createPreferences( - ICConfigurationDescription cfgDescription, CConfigurationData base) - throws CoreException { - Configuration cfg = (Configuration)((BuildConfigurationData)base).getConfiguration(); + protected CConfigurationData createPreferences(ICConfigurationDescription cfgDescription, CConfigurationData baseData) throws CoreException { + Configuration cfg = (Configuration)((BuildConfigurationData)baseData).getConfiguration(); Configuration newCfg = new Configuration((ManagedProject)cfg.getManagedProject(), cfg, cfgDescription.getId(), true, true, true); newCfg.setConfigurationDescription(cfgDescription); newCfg.setName(cfgDescription.getName()); @@ -234,12 +228,10 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem @Override - public CConfigurationData createConfiguration( - ICConfigurationDescription cfgDescription, - ICConfigurationDescription baseCfgDescription, - CConfigurationData base, boolean clone, - IProgressMonitor monitor) - throws CoreException { + public CConfigurationData createConfiguration(ICConfigurationDescription cfgDescription, + ICConfigurationDescription baseCfgDescription, CConfigurationData base, boolean clone, + IProgressMonitor monitor) throws CoreException { + if(cfgDescription.isPreferenceConfiguration()) return createPreferences(cfgDescription, base); @@ -259,7 +251,7 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem return newCfg.getConfigurationData(); } - public static Configuration copyCfg(Configuration cfg, ICConfigurationDescription cfgDescription){ + public static Configuration copyCfg(Configuration cfg, ICConfigurationDescription cfgDescription) { IManagedBuildInfo info = getBuildInfo(cfgDescription); ManagedProject mProj = (ManagedProject)info.getManagedProject(); @@ -278,7 +270,7 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem return newCfg; } - private static IManagedBuildInfo getBuildInfo(ICConfigurationDescription cfgDescription){ + private static IManagedBuildInfo getBuildInfo(ICConfigurationDescription cfgDescription) { ICProjectDescription projDes = cfgDescription.getProjectDescription(); IProject project = projDes.getProject(); IManagedBuildInfo info = ManagedBuildManager.getBuildInfo(project, false); @@ -292,15 +284,15 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem return info; } - private static void setLoaddedBuildInfo(ICProjectDescription des, IManagedBuildInfo info){ - des.setSessionProperty(BUILD_INFO_PROPERTY, info); + private static void setLoaddedBuildInfo(ICProjectDescription prjDescription, IManagedBuildInfo info) { + prjDescription.setSessionProperty(BUILD_INFO_PROPERTY, info); } - public static ManagedBuildInfo getLoaddedBuildInfo(ICProjectDescription des){ - return (ManagedBuildInfo)des.getSessionProperty(BUILD_INFO_PROPERTY); + public static ManagedBuildInfo getLoaddedBuildInfo(ICProjectDescription prjDescription) { + return (ManagedBuildInfo)prjDescription.getSessionProperty(BUILD_INFO_PROPERTY); } - private static IManagedProject getManagedProject(ICConfigurationDescription cfgDescription, IManagedBuildInfo info){ + private static IManagedProject getManagedProject(ICConfigurationDescription cfgDescription, IManagedBuildInfo info) { IManagedProject mProj = info.getManagedProject(); if(mProj == null){ mProj = createManagedProject(info, cfgDescription.getProjectDescription()); @@ -308,10 +300,10 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem return mProj; } - private static IManagedProject createManagedProject(IManagedBuildInfo info, ICProjectDescription des){ + private static IManagedProject createManagedProject(IManagedBuildInfo info, ICProjectDescription prjDescription) { IManagedProject mProj = null; try { - ICStorageElement rootElem = des.getStorage(BUILD_SYSTEM_DATA_MODULE_NAME, false); + ICStorageElement rootElem = prjDescription.getStorage(BUILD_SYSTEM_DATA_MODULE_NAME, false); if(rootElem != null){ String version = rootElem.getAttribute(VERSION_ATTRIBUTE); ICStorageElement children[] = rootElem.getChildren(); @@ -327,26 +319,26 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem } if(mProj == null){ - mProj = new ManagedProject(des); + mProj = new ManagedProject(prjDescription); info.setManagedProject(mProj); } return mProj; } - public static String[] getNaturesIdsUsedOnCache(IConfiguration cfg){ + public static String[] getNaturesIdsUsedOnCache(IConfiguration cfg) { ICConfigurationDescription cfgDescription = ManagedBuildManager.getDescriptionForConfiguration(cfg); if(cfgDescription != null) return getNaturesIdsUsedOnCache(cfgDescription); return null; } - public static String[] getNaturesIdsUsedOnCache(ICConfigurationDescription cfgDescription){ + public static String[] getNaturesIdsUsedOnCache(ICConfigurationDescription cfgDescription) { String[] strs = (String[])cfgDescription.getSessionProperty(NATURES_USED_ON_CACHE_PROPERTY); return strs != null && strs.length != 0 ? (String[])strs.clone() : strs; } - public static void cacheNaturesIdsUsedOnCache(ICConfigurationDescription cfgDescription){ + public static void cacheNaturesIdsUsedOnCache(ICConfigurationDescription cfgDescription) { IProject project = cfgDescription.getProjectDescription().getProject(); try { IProjectDescription eDes = project.getDescription(); @@ -357,12 +349,12 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem } } - private static void setNaturesIdsUsedOnCache(ICConfigurationDescription cfgDescription, String ids[]){ + private static void setNaturesIdsUsedOnCache(ICConfigurationDescription cfgDescription, String ids[]) { ids = ids != null && ids.length != 0 ? (String[])ids.clone() : ids; cfgDescription.setSessionProperty(NATURES_USED_ON_CACHE_PROPERTY, ids); } - private Configuration load(ICConfigurationDescription cfgDescription, ManagedProject mProj, boolean isPreference) throws CoreException{ + private Configuration load(ICConfigurationDescription cfgDescription, ManagedProject mProj, boolean isPreference) throws CoreException { ICStorageElement rootElement = cfgDescription.getStorage(BUILD_SYSTEM_DATA_MODULE_NAME, true); ICStorageElement children[] = rootElement.getChildren(); String version = rootElement.getAttribute(VERSION_ATTRIBUTE); @@ -378,36 +370,28 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem return cfg; } - protected CConfigurationData loadPreferences(ICConfigurationDescription cfgDescription) - throws CoreException { - + protected CConfigurationData loadPreferences(ICConfigurationDescription cfgDescription) throws CoreException { Configuration cfg = load(cfgDescription, null, true); - cfg = updatePreferenceOnLoad(cfg, cfgDescription); - cfg.setConfigurationDescription(cfgDescription); - return cfg.getConfigurationData(); } - public static Configuration getClearPreference(String id){ + public static Configuration getClearPreference(String id) { Configuration cfg = createEmptyPrefConfiguration(id, null); - cfg = adjustPreferenceConfig(cfg); - return cfg; } - private static Configuration updatePreferenceOnLoad(Configuration cfg, ICConfigurationDescription cfgDescription){ - if(cfg == null) + private static Configuration updatePreferenceOnLoad(Configuration cfg, ICConfigurationDescription cfgDescription) { + if(cfg == null) { cfg = createEmptyPrefConfiguration(cfgDescription.getId(), cfgDescription.getName()); - + } cfg = adjustPreferenceConfig(cfg); - return cfg; } - private static Configuration adjustPreferenceConfig(Configuration cfg){ + private static Configuration adjustPreferenceConfig(Configuration cfg) { LanguageManager mngr = LanguageManager.getInstance(); ILanguageDescriptor dess[] = mngr.getLanguageDescriptors(); Map map = mngr.getContentTypeIdToLanguageDescriptionsMap(); @@ -422,7 +406,7 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem return cfg; } - private static void adjustFolderInfo(IFolderInfo info, ILanguageDescriptor dess[], HashMap map){ + private static void adjustFolderInfo(IFolderInfo info, ILanguageDescriptor dess[], HashMap map) { IToolChain tch = info.getToolChain(); Map langMap = new HashMap(); for(int i = 0; i < dess.length; i++){ @@ -464,7 +448,7 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem } } - private static InputType adjustInputType(Tool tool, InputType type, ILanguageDescriptor des){ + private static InputType adjustInputType(Tool tool, InputType type, ILanguageDescriptor des) { String [] cTypeIds = des.getContentTypeIds(); String srcIds[] = type.getSourceContentTypeIds(); String hIds[] = type.getHeaderContentTypeIds(); @@ -488,7 +472,7 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem return type; } - private static void addTools(IToolChain tc, Map langMap, Map cTypeToLangMap){ + private static void addTools(IToolChain tc, Map langMap, Map cTypeToLangMap ){ ITool extTool = ManagedBuildManager.getExtensionTool(PREF_TOOL_ID); List list = new ArrayList(langMap.values()); ILanguageDescriptor des; @@ -521,7 +505,7 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem } - private static Configuration createEmptyPrefConfiguration(String id, String name){ + private static Configuration createEmptyPrefConfiguration(String id, String name) { Configuration extCfg = (Configuration)ManagedBuildManager.getExtensionConfiguration(PREF_CFG_ID); Configuration emptyPrefCfg = null; if(extCfg != null){ @@ -538,16 +522,15 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem } @Override - public CConfigurationData loadConfiguration(ICConfigurationDescription cfgDescription, - IProgressMonitor monitor) - throws CoreException { - if(cfgDescription.isPreferenceConfiguration()) + public CConfigurationData loadConfiguration(ICConfigurationDescription cfgDescription, IProgressMonitor monitor) throws CoreException { + if(cfgDescription.isPreferenceConfiguration()) { return loadPreferences(cfgDescription); + } IManagedBuildInfo info = getBuildInfo(cfgDescription); Configuration cfg = load(cfgDescription, (ManagedProject)info.getManagedProject(), false); - if(cfg != null){ + if(cfg != null) { cfg.setConfigurationDescription(cfgDescription); info.setValid(true); setPersistedFlag(cfgDescription); @@ -607,7 +590,7 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem } } - private boolean isPersistedCfg(ICConfigurationDescription cfgDescription){ + private boolean isPersistedCfg(ICConfigurationDescription cfgDescription) { return cfgDescription.getSessionProperty(CFG_PERSISTED_PROPERTY) != null; } @@ -627,9 +610,7 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem } @Override - public void removeConfiguration(ICConfigurationDescription cfgDescription, - CConfigurationData data, - IProgressMonitor monitor) { + public void removeConfiguration(ICConfigurationDescription cfgDescription, CConfigurationData data, IProgressMonitor monitor) { IConfiguration cfg = ((BuildConfigurationData)data).getConfiguration(); ManagedBuildManager.performValueHandlerEvent(cfg, IManagedOptionValueHandler.EVENT_CLOSE); IManagedBuildInfo info = getBuildInfo(cfgDescription); @@ -638,9 +619,7 @@ public class ConfigurationDataProvider extends CConfigurationDataProvider implem } @Override - public void dataCached(ICConfigurationDescription cfgDescription, - CConfigurationData data, - IProgressMonitor monitor) { + public void dataCached(ICConfigurationDescription cfgDescription, CConfigurationData data, IProgressMonitor monitor) { BuildConfigurationData cfgData = (BuildConfigurationData)data; ((Configuration)cfgData.getConfiguration()).setConfigurationDescription(cfgDescription); cfgData.clearCachedData(); diff --git a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/CConfigurationDataProvider.java b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/CConfigurationDataProvider.java index 256fe1237ed..728c1186bfa 100644 --- a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/CConfigurationDataProvider.java +++ b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/CConfigurationDataProvider.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2007, 2010 Intel Corporation and others. + * Copyright (c) 2007, 2013 Intel Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -11,95 +11,114 @@ package org.eclipse.cdt.core.settings.model.extension; import org.eclipse.cdt.core.settings.model.ICConfigurationDescription; +import org.eclipse.cdt.core.settings.model.ICProjectDescription; import org.eclipse.cdt.core.settings.model.IModificationContext; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IProgressMonitor; /** - * the class is to be implemented by the Configuration data provider contributed via + * The class is to be implemented by the Configuration data provider contributed via * a org.eclipse.cdt.core.CConfigurationDataProvider extension point * */ public abstract class CConfigurationDataProvider { /** - * requests the Configuration Data to be loadded for the given ConfigurationDescription - */ - public abstract CConfigurationData loadConfiguration(ICConfigurationDescription des, IProgressMonitor monitor) throws CoreException; - - /** - * requests the Configuration Data to be created for the given ConfigurationDescription - * The method can be called in several cases: - * 1. When the new configuration is being created based upon the already existing one via - * theICProjectDescription.createConfiguration method call - * 2. When the configuration copy (clone) is being created for the copy description - - * @param des - * @param baseDescription - * @param baseData - * @param clone true indicates that the configuration copy (clone) is being created for - * the copy description. - * @param monitor - * @return {@code false} indicates that the new configuration is being created based upon the already existing one via - * theICProjectDescription.createConfiguration method call, {@code true} otherwise - * @throws CoreException - */ - public abstract CConfigurationData createConfiguration(ICConfigurationDescription des, - ICConfigurationDescription baseDescription, - CConfigurationData baseData, boolean clone, - IProgressMonitor monitor) throws CoreException; - - /** - * called to notify the provider that the configuration is removed - */ - public abstract void removeConfiguration(ICConfigurationDescription des, CConfigurationData data, IProgressMonitor monitor); - - /** - * the method is called in case the implementer does NOT override - * the {@link #applyConfiguration(ICConfigurationDescription, ICConfigurationDescription, CConfigurationData, IModificationContext, IProgressMonitor)} - * method. See {@link #applyConfiguration(ICConfigurationDescription, ICConfigurationDescription, CConfigurationData, IModificationContext, IProgressMonitor)} - * for detail + * Requests the Configuration Data to be loaded for the given ConfigurationDescription. + * The method can be called in following cases: + *
+ * 1. Loading configuration from external data source such as .cproject.
+ * 2. Loading preference configuration defined in Preferences -> C/C++ -> New project Wizard -> Makefile Project. + * + * @param cfgDescription - configuration description being loaded. + * @param monitor - progress monitor. * * @throws CoreException */ - public CConfigurationData applyConfiguration(ICConfigurationDescription des, - ICConfigurationDescription baseDescription, - CConfigurationData baseData, - IProgressMonitor monitor) throws CoreException{ + public abstract CConfigurationData loadConfiguration(ICConfigurationDescription cfgDescription, IProgressMonitor monitor) throws CoreException; + + /** + * Requests the Configuration Data to be created for the given ConfigurationDescription. + * The method can be called in several cases: + *
+ * 1. When the new configuration is being created based upon the already existing one via + * ICProjectDescription.createConfiguration method call.
+ * 2. When the configuration copy (clone) is being created for the copy description. + * + * @param cfgDescription - configuration description for the configuration data being created. + * @param baseCfgDescription - configuration description for the configuration data the new data to be based upon. + * @param baseData - configuration data the new data to be based upon. + * @param clone - {@code true} indicates that the configuration copy (clone) is being created for the copy description. + * @param monitor - progress monitor. + * + * @return {@code false} indicates that the new configuration is being created based upon the already existing one via + * ICProjectDescription.createConfiguration method call, {@code true} otherwise. + * + * @throws CoreException + */ + public abstract CConfigurationData createConfiguration(ICConfigurationDescription cfgDescription, + ICConfigurationDescription baseCfgDescription, CConfigurationData baseData, + boolean clone, IProgressMonitor monitor) throws CoreException; + + /** + * Called to notify the provider that the configuration is removed. + * + * @param cfgDescription - configuration description being removed. + * @param data - configuration data. + * @param monitor - progress monitor. + */ + public abstract void removeConfiguration(ICConfigurationDescription cfgDescription, CConfigurationData data, IProgressMonitor monitor); + + /** + * The method is called in case the implementer does NOT override method + * {@link #applyConfiguration(ICConfigurationDescription, ICConfigurationDescription, CConfigurationData, IModificationContext, IProgressMonitor)}. + * + * @param cfgDescription - configuration description where the configuration data are being applied to. + * @param baseCfgDescription - configuration description of the configuration data being applied. + * @param baseData - configuration data being applied. + * + * @throws CoreException + */ + public CConfigurationData applyConfiguration(ICConfigurationDescription cfgDescription, + ICConfigurationDescription baseCfgDescription, CConfigurationData baseData, + IProgressMonitor monitor) throws CoreException { + return baseData; } /** - * called during the setProjectDescription operation to notify the provider that the configuration data + * Called during the setProjectDescription operation to notify the provider that the configuration data * is being applied. * Provider would typically store all the necessary data configuration during this call. * - * @param des - * @param baseDescription - * @param baseData + * @param cfgDescription - configuration description where the configuration data are being applied to. + * @param baseCfgDescription - configuration description of the configuration data being applied. + * @param baseData - configuration data being applied. * @param context the {@link IModificationContext} allows registering workspace runnables to be run - * as a single batch workspace operation. - * If possible the runnables will be run directly in the apply context(thread) after all - * configuration datas get applied. Otherwise runnables will be run as a separate job. - * This allows to perform all workspace modifications registered by different configurations - * to be run as a single batch peration together with the workspace modifications performed by the - * ICProjectDesacription framework - * @param monitor + * as a single batch workspace operation. + * If possible the runnables will be run directly in the apply context(thread) after all + * configuration datas get applied. Otherwise runnables will be run as a separate job. + * This allows to perform all workspace modifications registered by different configurations + * to be run as a single batch operation together with the workspace modifications performed by the + * {@link ICProjectDescription} framework. + * @param monitor - progress monitor. * * @throws CoreException */ - public CConfigurationData applyConfiguration(ICConfigurationDescription des, - ICConfigurationDescription baseDescription, - CConfigurationData baseData, - IModificationContext context, - IProgressMonitor monitor) throws CoreException{ - return applyConfiguration(des, baseDescription, baseData, monitor); + public CConfigurationData applyConfiguration(ICConfigurationDescription cfgDescription, + ICConfigurationDescription baseCfgDescription, CConfigurationData baseData, + IModificationContext context, IProgressMonitor monitor) throws CoreException { + + return applyConfiguration(cfgDescription, baseCfgDescription, baseData, monitor); } /** - * called to notify that the configuration data was cached - * implementors can do any necessary cleaning, etc. - * Default implementation is empty + * Called to notify that the configuration data was cached. Implementors can do any necessary cleaning, etc. + * Default implementation is empty. + * + * @param cfgDescription - configuration description which was cached. + * @param data - configuration data. + * @param monitor - progress monitor. */ - public void dataCached(ICConfigurationDescription cfgDes, CConfigurationData data, IProgressMonitor monitor){ + public void dataCached(ICConfigurationDescription cfgDescription, CConfigurationData data, IProgressMonitor monitor) { } } diff --git a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/impl/CDefaultConfigurationDataProvider.java b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/impl/CDefaultConfigurationDataProvider.java index b0251d9e64d..b32c8b79f27 100644 --- a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/impl/CDefaultConfigurationDataProvider.java +++ b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/core/settings/model/extension/impl/CDefaultConfigurationDataProvider.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2007, 2008 Intel Corporation and others. + * Copyright (c) 2007, 2013 Intel Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -19,79 +19,70 @@ import org.eclipse.cdt.core.settings.model.util.CDataUtil; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IProgressMonitor; -public class CDefaultConfigurationDataProvider extends - CConfigurationDataProvider { +public class CDefaultConfigurationDataProvider extends CConfigurationDataProvider { private static final String DEFAULT_STORAGE_ID = "defaultConfigurationDataProvider"; //$NON-NLS-1$ - - @Override - public CConfigurationData applyConfiguration( - ICConfigurationDescription des, - ICConfigurationDescription baseDescription, - CConfigurationData base, - IProgressMonitor monitor) - throws CoreException { - ICStorageElement el = getStorageElement(des, true); - CDataSerializer serializer = getDataSerializer(); - serializer.store(base, el); - return base; - } @Override - public CConfigurationData createConfiguration( - ICConfigurationDescription des, - ICConfigurationDescription baseDescription, - CConfigurationData base, - boolean clone, + public CConfigurationData applyConfiguration(ICConfigurationDescription cfgDescription, + ICConfigurationDescription baseCfgDescription, CConfigurationData baseData, IProgressMonitor monitor) throws CoreException { - CDataFactory factory = getDataFactory(); - return factory.createConfigurationdata(des.getId(), des.getName(), base, clone); + + ICStorageElement el = getStorageElement(cfgDescription, true); + CDataSerializer serializer = getDataSerializer(); + serializer.store(baseData, el); + return baseData; } @Override - public CConfigurationData loadConfiguration(ICConfigurationDescription des, - IProgressMonitor monitor) - throws CoreException { - ICStorageElement el = getStorageElement(des, false); - if(el != null){ + public CConfigurationData createConfiguration(ICConfigurationDescription cfgDescription, + ICConfigurationDescription baseCfgDescription, CConfigurationData baseData, + boolean clone, IProgressMonitor monitor) throws CoreException { + + CDataFactory factory = getDataFactory(); + return factory.createConfigurationdata(cfgDescription.getId(), cfgDescription.getName(), baseData, clone); + } + + @Override + public CConfigurationData loadConfiguration(ICConfigurationDescription cfgDescription, IProgressMonitor monitor) throws CoreException { + ICStorageElement el = getStorageElement(cfgDescription, false); + if(el != null) { CDataSerializer serializer = getDataSerializer(); CDataFactory factory = getDataFactory(); try { return serializer.loadConfigurationData(factory, el); - } catch (CoreException e){ - if(des.isPreferenceConfiguration()) + } catch (CoreException e) { + if(cfgDescription.isPreferenceConfiguration()) return createPreferenceConfig(factory); throw e; } - } else if (des.isPreferenceConfiguration()){ + } else if (cfgDescription.isPreferenceConfiguration()) { return createPreferenceConfig(getDataFactory()); } return null; } @Override - public void removeConfiguration(ICConfigurationDescription des, - CConfigurationData data, - IProgressMonitor monitor) { + public void removeConfiguration(ICConfigurationDescription cfgDescription, CConfigurationData data, IProgressMonitor monitor) { //do nothing } - - protected CDataFactory getDataFactory(){ + + protected CDataFactory getDataFactory() { return CDataFactory.getDefault(); } - - protected CDataSerializer getDataSerializer(){ + + protected CDataSerializer getDataSerializer() { return CDataSerializer.getDefault(); } - - protected String getStorageId(){ + + protected String getStorageId() { return DEFAULT_STORAGE_ID; } - - protected ICStorageElement getStorageElement(ICConfigurationDescription des, boolean create) throws CoreException{ - return des.getStorage(getStorageId(), create); + + protected ICStorageElement getStorageElement(ICConfigurationDescription cfgDescription, boolean create) throws CoreException { + return cfgDescription.getStorage(getStorageId(), create); } - - protected CConfigurationData createPreferenceConfig(CDataFactory factory){ + + protected CConfigurationData createPreferenceConfig(CDataFactory factory) { return CDataUtil.createEmptyData(null, "preference", factory, true); //$NON-NLS-1$ } } diff --git a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/PathEntryConfigurationDataProvider.java b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/PathEntryConfigurationDataProvider.java index 3b2302e66d1..1ec6d0dc266 100644 --- a/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/PathEntryConfigurationDataProvider.java +++ b/core/org.eclipse.cdt.core/model/org/eclipse/cdt/internal/core/settings/model/PathEntryConfigurationDataProvider.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2007, 2010 Intel Corporation and others. + * Copyright (c) 2007, 2013 Intel Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -45,43 +45,41 @@ import org.eclipse.core.runtime.IPath; import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.NullProgressMonitor; -public class PathEntryConfigurationDataProvider extends - CConfigurationDataProvider { +public class PathEntryConfigurationDataProvider extends CConfigurationDataProvider { private static PathEntryDataFactory fFactory; - - - public static CDataFactory getDataFactory(){ - if(fFactory == null){ + + public static CDataFactory getDataFactory() { + if(fFactory == null) { fFactory = new PathEntryDataFactory(); } return fFactory; } - public PathEntryConfigurationDataProvider(){ + public PathEntryConfigurationDataProvider() { getDataFactory(); } private static class PathEntryFolderData extends CDefaultFolderData { private EntryStore fStore; - -// public PathEntryFolderData(CConfigurationData cfg, CDataFacroty factory) { -// super(cfg, factory); -// } -// public PathEntryFolderData(String id, IPath path, -// CConfigurationData cfg, CDataFacroty factory) { -// super(id, path, cfg, factory); -// } + // public PathEntryFolderData(CConfigurationData cfg, CDataFacroty factory) { + // super(cfg, factory); + // } + + // public PathEntryFolderData(String id, IPath path, + // CConfigurationData cfg, CDataFacroty factory) { + // super(id, path, cfg, factory); + // } public PathEntryFolderData(String id, IPath path, PathEntryFolderData base, - CConfigurationData cfg, CDataFactory factory, boolean clone) { - super(id, path, cfg, factory); - + CConfigurationData cfgData, CDataFactory factory, boolean clone) { + super(id, path, cfgData, factory); + if(base != null) fStore = new EntryStore(base.fStore, true); else fStore = new EntryStore(true); - + copyDataFrom(base, clone); } } @@ -89,45 +87,44 @@ public class PathEntryConfigurationDataProvider extends private static class PathEntryFileData extends CDefaultFileData { private EntryStore fStore; -// public PathEntryFileData(CConfigurationData cfg, CDataFacroty factory) { -// super(cfg, factory); -// } + // public PathEntryFileData(CConfigurationData cfg, CDataFacroty factory) { + // super(cfg, factory); + // } -// public PathEntryFileData(String id, IPath path, CConfigurationData cfg, -// CDataFacroty factory) { -// super(id, path, cfg, factory); -// } + // public PathEntryFileData(String id, IPath path, CConfigurationData cfg, + // CDataFacroty factory) { + // super(id, path, cfg, factory); + // } public PathEntryFileData(String id, IPath path, PathEntryFileData base, CConfigurationData cfg, CDataFactory factory, boolean clone) { super(id, path, cfg, factory); fStore = new EntryStore(base.fStore, true); - + copyDataFrom(base, clone); } public PathEntryFileData(String id, IPath path, PathEntryFolderData base, - CLanguageData baseLangData, CConfigurationData cfg, + CLanguageData baseLangData, CConfigurationData cfgData, CDataFactory factory) { - super(id, path, cfg, factory); + super(id, path, cfgData, factory); fStore = new EntryStore(base.fStore, true); - + copyDataFrom(base, baseLangData); } - - } - - private static class PathEntryLanguageData extends CDefaultLanguageData { + } + + private static class PathEntryLanguageData extends CDefaultLanguageData { public PathEntryLanguageData(String id, CLanguageData base, EntryStore store) { fId = id; fStore = store; copySettingsFrom(base); } - public PathEntryLanguageData(String id, String name, String languageId, int kinds, + public PathEntryLanguageData(String id, String name, String languageId, int kinds, String[] ids, boolean isContentTypes, EntryStore store) { super(id, languageId, ids, isContentTypes); fStore = store; @@ -144,11 +141,10 @@ public class PathEntryConfigurationDataProvider extends protected EntryStore createStore(CLanguageData data) { return fStore; } - - } - - private static class PathEntryDataFactory extends CDataFactory { + } + + private static class PathEntryDataFactory extends CDataFactory { @Override public CConfigurationData createConfigurationdata(String id, String name, CConfigurationData base, boolean clone) { @@ -157,21 +153,21 @@ public class PathEntryConfigurationDataProvider extends } else if(id == null){ id = CDataUtil.genId(null); } - + return new CfgData(id, name, base, clone); } @Override public CFileData createFileData(CConfigurationData cfg, - CResourceData base, CLanguageData base2, + CResourceData base, CLanguageData base2, String id, boolean clone, IPath path) { if(id == null) id = clone ? base.getId() : CDataUtil.genId(cfg.getId()); - if(base.getType() == ICSettingBase.SETTING_FILE) - return new PathEntryFileData(id, path, (PathEntryFileData)base, cfg, this, clone); - return new PathEntryFileData(id, path, (PathEntryFolderData)base, - base2, cfg, this); + if(base.getType() == ICSettingBase.SETTING_FILE) + return new PathEntryFileData(id, path, (PathEntryFileData)base, cfg, this, clone); + return new PathEntryFileData(id, path, (PathEntryFolderData)base, + base2, cfg, this); } @Override @@ -179,7 +175,7 @@ public class PathEntryConfigurationDataProvider extends CFolderData base, String id, boolean clone, IPath path) { if(id == null) id = clone ? base.getId() : CDataUtil.genId(cfg.getId()); - return new PathEntryFolderData(id, path, (PathEntryFolderData)base, cfg, this, clone); + return new PathEntryFolderData(id, path, (PathEntryFolderData)base, cfg, this, clone); } @Override @@ -187,12 +183,12 @@ public class PathEntryConfigurationDataProvider extends CResourceData rcBase, CLanguageData base, String id, boolean clone) { if(id == null) id = clone ? base.getId() : CDataUtil.genId(rcBase.getId()); - EntryStore store; - if(rcBase.getType() == ICSettingBase.SETTING_FOLDER) - store = ((PathEntryFolderData)rcBase).fStore; - else - store = ((PathEntryFileData)rcBase).fStore; - return new PathEntryLanguageData(id, base, store); + EntryStore store; + if(rcBase.getType() == ICSettingBase.SETTING_FOLDER) + store = ((PathEntryFolderData)rcBase).fStore; + else + store = ((PathEntryFileData)rcBase).fStore; + return new PathEntryLanguageData(id, base, store); } @Override @@ -208,53 +204,49 @@ public class PathEntryConfigurationDataProvider extends store = ((PathEntryFileData)rcBase).fStore; return new PathEntryLanguageData(id, name, languageId, supportedEntryKinds, rcTypes, isContentTypes, store); } - + } private static class CfgData extends CDefaultConfigurationData { -// private PathEntryResolveInfo fResolveInfo; + // private PathEntryResolveInfo fResolveInfo; public CfgData(String id, String name, CConfigurationData base, boolean clone) { super(id, name, base, fFactory, clone); } - public CfgData(String id, String name) { super(id, name, fFactory); } - -// public PathEntryResolveInfo getResolveInfo(){ -// return fResolveInfo; -// } -// -// public void setResolveInfo(PathEntryResolveInfo info){ -// fResolveInfo = info; -// } + + // public PathEntryResolveInfo getResolveInfo(){ + // return fResolveInfo; + // } + // + // public void setResolveInfo(PathEntryResolveInfo info){ + // fResolveInfo = info; + // } } - + public static boolean isPathEntryData(CConfigurationData data){ return data instanceof CfgData; } - + @Override - public CConfigurationData applyConfiguration( - ICConfigurationDescription des, - ICConfigurationDescription baseDescription, - CConfigurationData base, - IProgressMonitor monitor) - throws CoreException { + public CConfigurationData applyConfiguration(ICConfigurationDescription cfgDescription, + ICConfigurationDescription baseCfgDescription, CConfigurationData baseData, + IProgressMonitor monitor) throws CoreException { + //TODO: check external/reference info here as well. - if(!fFactory.isModified(base)){ - return createData(des, base, false, true); + if (!fFactory.isModified(baseData)) { + return createData(cfgDescription, baseData, false, true); } - - - IProject project = des.getProjectDescription().getProject(); -// ReferenceSettingsInfo refInfo = new ReferenceSettingsInfo(des); - IPathEntry entries[] = PathEntryTranslator.getPathEntries(project, baseDescription, PathEntryTranslator.INCLUDE_USER); + + IProject project = cfgDescription.getProjectDescription().getProject(); + // ReferenceSettingsInfo refInfo = new ReferenceSettingsInfo(des); + IPathEntry entries[] = PathEntryTranslator.getPathEntries(project, baseCfgDescription, PathEntryTranslator.INCLUDE_USER); CModelManager manager = CModelManager.getDefault(); ICProject cproject = manager.create(project); IPathEntry[] curRawEntries = PathEntryManager.getDefault().getRawPathEntries(cproject); - + List list = new ArrayList(); list.addAll(Arrays.asList(entries)); for(int i = 0; i < curRawEntries.length; i++){ @@ -262,16 +254,16 @@ public class PathEntryConfigurationDataProvider extends list.add(curRawEntries[i]); } } - + IPathEntry[] newEntries = list.toArray(new IPathEntry[list.size()]); PathEntryManager.getDefault().setRawPathEntries(cproject, newEntries, new NullProgressMonitor()); - return createData(des, base, false, false); + return createData(cfgDescription, baseData, false, false); } - - private CConfigurationData createData(ICConfigurationDescription des, CConfigurationData fallbackData, boolean modifiedFlag, boolean useCache) throws CoreException { + + private CConfigurationData createData(ICConfigurationDescription cfgDescription, CConfigurationData fallbackData, boolean modifiedFlag, boolean useCache) throws CoreException { CConfigurationData dataToReturn; try { - dataToReturn = createData(des, useCache); + dataToReturn = createData(cfgDescription, useCache); } catch (Exception e){ if(fallbackData != null) dataToReturn = fallbackData; @@ -282,73 +274,71 @@ public class PathEntryConfigurationDataProvider extends } fFactory.setModified(dataToReturn, modifiedFlag); return dataToReturn; - + } @Override - public CConfigurationData createConfiguration( - ICConfigurationDescription des, - ICConfigurationDescription baseDescription, - CConfigurationData base, - boolean clone, - IProgressMonitor monitor) throws CoreException { - CfgData copy = new CfgData(des.getId(), des.getName(), base, clone); + public CConfigurationData createConfiguration(ICConfigurationDescription cfgDescription, + ICConfigurationDescription baseCfgDescription, CConfigurationData baseData, + boolean clone, IProgressMonitor monitor) throws CoreException { + + CfgData copy = new CfgData(cfgDescription.getId(), cfgDescription.getName(), baseData, clone); copy.setModified(false); return copy; } - - private CfgData createData(ICConfigurationDescription des, boolean useCache) throws CoreException{ - IProject project = des.getProjectDescription().getProject(); + + private CfgData createData(ICConfigurationDescription cfgDescription, boolean useCache) throws CoreException { + IProject project = cfgDescription.getProjectDescription().getProject(); CModelManager manager = CModelManager.getDefault(); ICProject cproject = manager.create(project); PathEntryResolveInfo rInfo = PathEntryManager.getDefault().getResolveInfo(cproject, useCache); - - CfgData data = new CfgData(des.getId(), des.getName()); + + CfgData data = new CfgData(cfgDescription.getId(), cfgDescription.getName()); data.initEmptyData(); CDataUtil.adjustConfig(data, getDataFactory()); //CProjectDescriptionManager.getInstance().adjustDefaultConfig(data); - -// data.setResolveInfo(rInfo); + + // data.setResolveInfo(rInfo); PathEntryTranslator tr = new PathEntryTranslator(project, data); ReferenceSettingsInfo refInfo = tr.applyPathEntries(rInfo, PathEntryTranslator.OP_REPLACE); ICExternalSetting extSettings[] = refInfo.getExternalSettings(); - des.removeExternalSettings(); - if(extSettings.length != 0){ + cfgDescription.removeExternalSettings(); + if (extSettings.length != 0) { ICExternalSetting setting; for(int i = 0; i < extSettings.length; i++){ setting = extSettings[i]; - des.createExternalSetting(setting.getCompatibleLanguageIds(), - setting.getCompatibleContentTypeIds(), - setting.getCompatibleExtensions(), + cfgDescription.createExternalSetting(setting.getCompatibleLanguageIds(), + setting.getCompatibleContentTypeIds(), + setting.getCompatibleExtensions(), setting.getEntries()); } } -// IPath projPaths[] = refInfo.getReferencedProjectsPaths(); -// if(projPaths.length != 0){ -// Map map = new HashMap(projPaths.length); -// for(int i = 0; i < projPaths.length; i++){ -// map.put(projPaths[i].segment(0), ""); //$NON-NLS-1$ -// } -// des.setReferenceInfo(map); -// } + // IPath projPaths[] = refInfo.getReferencedProjectsPaths(); + // if(projPaths.length != 0){ + // Map map = new HashMap(projPaths.length); + // for(int i = 0; i < projPaths.length; i++){ + // map.put(projPaths[i].segment(0), ""); //$NON-NLS-1$ + // } + // des.setReferenceInfo(map); + // } cproject.close(); - - String[] ids = getIds(des.get(CCorePlugin.BINARY_PARSER_UNIQ_ID)); + + String[] ids = getIds(cfgDescription.get(CCorePlugin.BINARY_PARSER_UNIQ_ID)); data.getTargetPlatformData().setBinaryParserIds(ids); - - ids = getIds(des.get(CCorePlugin.ERROR_PARSER_UNIQ_ID)); + + ids = getIds(cfgDescription.get(CCorePlugin.ERROR_PARSER_UNIQ_ID)); data.getBuildData().setErrorParserIDs(ids); - + data.setModified(false); return data; } - + private String[] getIds(ICConfigExtensionReference refs[]){ if(refs == null || refs.length == 0) return new String[0]; - + String[] ids = new String[refs.length]; for(int i = 0; i < refs.length; i++){ ids[i] = refs[i].getID(); @@ -357,22 +347,17 @@ public class PathEntryConfigurationDataProvider extends } @Override - public CConfigurationData loadConfiguration(ICConfigurationDescription des, - IProgressMonitor monitor) - throws CoreException { - return createData(des, null, false, true); + public CConfigurationData loadConfiguration(ICConfigurationDescription cfgDescription, IProgressMonitor monitor) throws CoreException { + return createData(cfgDescription, null, false, true); } @Override - public void removeConfiguration(ICConfigurationDescription des, - CConfigurationData data, - IProgressMonitor monitor) { + public void removeConfiguration(ICConfigurationDescription cfgDescription, CConfigurationData data, IProgressMonitor monitor) { //do nothing for now } @Override - public void dataCached(ICConfigurationDescription cfgDes, - CConfigurationData data, IProgressMonitor monitor) { + public void dataCached(ICConfigurationDescription cfgDescription, CConfigurationData data, IProgressMonitor monitor) { fFactory.setModified(data, false); }