public interface ICConfigurationDescription extends ICSettingContainer, ICSettingObject, ICSettingsStorage
CConfigurationDescriptionCache
and writable one by CConfigurationDescription
.CProjectDescriptionEvent
,
CConfigurationDescriptionCache
SETTING_BUILD, SETTING_CONFIGURATION, SETTING_FILE, SETTING_FOLDER, SETTING_LANGUAGE, SETTING_PROJECT, SETTING_TARGET_PLATFORM
Modifier and Type | Method and Description |
---|---|
ICConfigExtensionReference |
create(String extensionPoint,
String extension) |
ICExternalSetting |
createExternalSetting(String[] languageIDs,
String[] contentTypeIds,
String[] extensions,
ICSettingEntry[] entries)
Creates/adds external setting to this configuration
in case some configurations refer (depend on) this configuration
exported settings of this configuration get applied to those configurations
|
ICFileDescription |
createFileDescription(org.eclipse.core.runtime.IPath path,
ICResourceDescription base)
Creates a new file description for the specified path
|
ICFolderDescription |
createFolderDescription(org.eclipse.core.runtime.IPath path,
ICFolderDescription base)
Creates a new folder description for the specified path
|
ICConfigExtensionReference[] |
get(String extensionPointID) |
ICBuildSetting |
getBuildSetting()
Returns the build setting for this configuration
|
String |
getBuildSystemId()
Returns the ID of the build system used with this configuration
i.e.
|
ICdtVariablesContributor |
getBuildVariablesContributor()
Returns the CDT variable contributor that represent information on the
CDT variables (Build Macros) contributed/used with this configuration
|
CConfigurationData |
getConfigurationData()
This method should be used by the build system only for getting
the build-system contributed CConfigurationData
|
CConfigurationStatus |
getConfigurationStatus() |
String |
getDescription()
Returns the human-readable configuration description.
|
ICExternalSetting[] |
getExternalSettings()
Returns an array of settings exported by this configuration
in case some configurations refer (depend on) this configuration
exported settings of this configuration get applied to those configurations
|
String[] |
getExternalSettingsProviderIds()
Returns the ids of external setting providers used for the configuration
|
ICFileDescription[] |
getFileDescriptions()
Returns the complete set of file descriptions defined for this configuration
The file description is the settings holder for the specified file
|
ICFolderDescription[] |
getFolderDescriptions()
Returns the complete set of folder descriptions defined for this configuration
The folder description is the settings holder for the specified folder
|
ICLanguageSetting |
getLanguageSettingForFile(org.eclipse.core.runtime.IPath path,
boolean ignoreExludeStatus)
Deprecated.
Deprecated as of CDT 8.1. This method returns settings supplied by MBS only.
|
ICProjectDescription |
getProjectDescription()
Returns the project description this configuration belongs to
|
Map<String,String> |
getReferenceInfo()
Returns a Map of configurations referenced by this configuration.
|
ICSourceEntry[] |
getResolvedSourceEntries() |
ICResourceDescription |
getResourceDescription(org.eclipse.core.runtime.IPath path,
boolean exactPath)
Returns the resource description for the given path
|
ICResourceDescription[] |
getResourceDescriptions()
Returns the complete set of file and folder descriptions (resource descriptions) defined
for this configuration
The resource description is the settings holder for the specified resource
|
ICFolderDescription |
getRootFolderDescription()
Returns the "root" folder description
The root folder description is the default one used for the project root folder
The root folder description can not be null
|
Object |
getSessionProperty(org.eclipse.core.runtime.QualifiedName name)
The get/setSettionsProperty methods allow to associate the session properties mechanism on
the configuration level session properties are not persisted and are not restored on the next
eclipse session the scope of configuration session properties is the current configuration
description, i.e.
|
ICSourceEntry[] |
getSourceEntries()
Returns the source entries for this configuration
|
ICTargetPlatformSetting |
getTargetPlatformSetting()
Returns the target platform settings for this configuration
|
boolean |
isActive()
Returns whether or not this is an active configuration.
|
boolean |
isModified()
Returns whether or not the configuration description was modified
|
boolean |
isPreferenceConfiguration() |
void |
remove(ICConfigExtensionReference ext) |
void |
remove(String extensionPoint) |
void |
removeExternalSetting(ICExternalSetting setting)
Removes external setting from this configuration
in case some configurations refer (depend on) this configuration
exported settings of this configuration get applied to those configurations
|
void |
removeExternalSettings()
Removes all external settings from this configuration
in case some configurations refer (depend on) this configuration
exported settings of this configuration get applied to those configurations
|
void |
removeResourceDescription(ICResourceDescription des)
Removes the given resource description from the configuration
|
void |
setActive()
Sets this configuration as active
this call is equivalent to
ICProjectDescription.setActiveConfiguration(ICConfigurationDescription)
Active configuration is the one that is built by default. |
void |
setConfigurationData(String buildSystemId,
CConfigurationData data)
This method should be used by the build system only for updating
the build-system contributed CConfigurationData
|
void |
setDescription(String des)
Sets the configuration description
|
void |
setExternalSettingsProviderIds(String[] ids)
Sets the external setting providers to be used for the configuration
|
void |
setName(String name)
Sets the name for this configuration
|
void |
setReferenceInfo(Map<String,String> refs)
Sets the reference information for this configuration.
|
void |
setSessionProperty(org.eclipse.core.runtime.QualifiedName name,
Object value)
The get/setSettionsProperty methods allow to associate the session properties mechanism on
the configuration level session properties are not persisted and are not restored on the next
eclipse session the scope of configuration session properties is the current configuration
description, i.e.
|
void |
setSourceEntries(ICSourceEntry[] entries)
Sets the source entries for this configuration
|
void |
updateExternalSettingsProviders(String[] ids)
Tells the configuration to update the given providers
In case the specified ids contain provider ids not associated with the configuration,
those ids will be ignored and will NOT be added to the configuration settings
|
getChildSettings
getConfiguration, getId, getName, getParent, getType, isReadOnly, isValid
getStorage, importStorage, isReadOnly, removeStorage, setReadOnly
boolean isActive()
ICProjectDescription.getActiveConfiguration()
callString getDescription()
void setDescription(String des) throws WriteAccessException
des
- WriteAccessException
- when the configuration description is read-only
see CoreModel.getProjectDescription(org.eclipse.core.resources.IProject, boolean)
ICProjectDescription getProjectDescription()
ICFolderDescription getRootFolderDescription()
ICFolderDescription[] getFolderDescriptions()
ICFolderDescription
ICFileDescription[] getFileDescriptions()
ICFileDescription
ICResourceDescription[] getResourceDescriptions()
ICResourceDescription getResourceDescription(org.eclipse.core.runtime.IPath path, boolean exactPath)
path
- - project-relative workspace resource pathexactPath
- - when true the resource description of the given path is searched and if
not found null is returned,
if false, the resource description applicable for the given path is returned,
i.e. if the configuration contains resource descriptions of the following paths "" and "a/"
getResourceDescription(new Path("a/b"), true) returns null
getResourceDescription(new Path("a/b"), false) returns the "a" folder descriptionICResourceDescription
that is either a ICFolderDescription
or
an ICFileDescription
void removeResourceDescription(ICResourceDescription des) throws org.eclipse.core.runtime.CoreException, WriteAccessException
des
- org.eclipse.core.runtime.CoreException
WriteAccessException
- when the configuration description is read-only
see CoreModel.getProjectDescription(org.eclipse.core.resources.IProject, boolean)
ICFileDescription createFileDescription(org.eclipse.core.runtime.IPath path, ICResourceDescription base) throws org.eclipse.core.runtime.CoreException, WriteAccessException
path
- project-relative file workspace pathbase
- resource description from which settings will be coppied/inherittedorg.eclipse.core.runtime.CoreException
WriteAccessException
- when the configuration description is read-only
see CoreModel.getProjectDescription(org.eclipse.core.resources.IProject, boolean)
ICFolderDescription createFolderDescription(org.eclipse.core.runtime.IPath path, ICFolderDescription base) throws org.eclipse.core.runtime.CoreException, WriteAccessException
path
- project-relative folder workspace pathbase
- resource description from which settings will be coppied/inherittedorg.eclipse.core.runtime.CoreException
WriteAccessException
- when the configuration description is read-only
see CoreModel.getProjectDescription(org.eclipse.core.resources.IProject, boolean)
String getBuildSystemId()
CConfigurationData getConfigurationData()
void setActive() throws WriteAccessException
ICProjectDescription.setActiveConfiguration(ICConfigurationDescription)
Active configuration is the one that is built by default.
This configuration is returned by the ICProjectDescription.getActiveConfiguration()
callWriteAccessException
- when the configuration description is read-only,
see CoreModel.getProjectDescription(org.eclipse.core.resources.IProject, boolean)
void setConfigurationData(String buildSystemId, CConfigurationData data) throws WriteAccessException
WriteAccessException
- when the configuration description is read-only,
see CoreModel.getProjectDescription(org.eclipse.core.resources.IProject, boolean)
and the extension point
org.eclipse.cdt.core.CConfigurationDataProvider
boolean isModified()
isModified
in interface ICSettingsStorage
ICTargetPlatformSetting getTargetPlatformSetting()
ICTargetPlatformSetting
ICSourceEntry[] getSourceEntries()
ICSourceEntry
ICSourceEntry[] getResolvedSourceEntries()
void setSourceEntries(ICSourceEntry[] entries) throws org.eclipse.core.runtime.CoreException, WriteAccessException
entries
- WriteAccessException
- when the configuration description is read-only,
see CoreModel.getProjectDescription(org.eclipse.core.resources.IProject, boolean)
org.eclipse.core.runtime.CoreException
Map<String,String> getReferenceInfo()
This Map is keyed by project name with value equal to the referenced configuration's ID, or the empty string. The empty string is a special configuration value which indicates the reference tracks the Active configuration in the referenced Project.
If the current configuration does not reference any other configurations, an empty map is returned.
setReferenceInfo(Map)
,
getExternalSettings()
,
createExternalSetting(String[], String[], String[], ICSettingEntry[])
void setReferenceInfo(Map<String,String> refs) throws WriteAccessException
This reference information is a map from project name to configuration ID within the referenced project. The empty string is a special configuration value which indicates the reference tracks the Active configuration in the referenced Project.
refs
- Map of project name -> configuration ID of referenced configurationsWriteAccessException
- when the configuration description is read-only
see CoreModel.getProjectDescription(org.eclipse.core.resources.IProject, boolean)
#getReferenceInfo()}
{@link #getExternalSettings()}
{@link #createExternalSetting(String[], String[], String[], ICSettingEntry[])}
ICExternalSetting[] getExternalSettings()
ICExternalSetting
,
getReferenceInfo()
,
setReferenceInfo(Map)
ICExternalSetting createExternalSetting(String[] languageIDs, String[] contentTypeIds, String[] extensions, ICSettingEntry[] entries) throws WriteAccessException
languageIDs
- contentTypeIds
- extensions
- entries
- WriteAccessException
- when the configuration description is read-only
see CoreModel.getProjectDescription(org.eclipse.core.resources.IProject, boolean)
ICExternalSetting
,
getReferenceInfo()
,
setReferenceInfo(Map)
,
getExternalSettings()
void removeExternalSetting(ICExternalSetting setting) throws WriteAccessException
setting
- WriteAccessException
- when the configuration description is read-only
see CoreModel.getProjectDescription(org.eclipse.core.resources.IProject, boolean)
ICExternalSetting
,
getReferenceInfo()
,
setReferenceInfo(Map)
,
getExternalSettings()
void removeExternalSettings() throws WriteAccessException
WriteAccessException
- when the configuration description is read-only
see CoreModel.getProjectDescription(org.eclipse.core.resources.IProject, boolean)
ICExternalSetting
,
getReferenceInfo()
,
setReferenceInfo(Map)
,
getExternalSettings()
ICBuildSetting getBuildSetting()
ICBuildSetting
ICdtVariablesContributor getBuildVariablesContributor()
ICdtVariablesContributor
Object getSessionProperty(org.eclipse.core.runtime.QualifiedName name)
void setSessionProperty(org.eclipse.core.runtime.QualifiedName name, Object value)
name
- value
- void setName(String name) throws WriteAccessException
name
- WriteAccessException
- when the configuration description is read-only
see CoreModel.getProjectDescription(org.eclipse.core.resources.IProject, boolean)
ICConfigExtensionReference[] get(String extensionPointID)
ICConfigExtensionReference create(String extensionPoint, String extension) throws org.eclipse.core.runtime.CoreException
org.eclipse.core.runtime.CoreException
void remove(ICConfigExtensionReference ext) throws org.eclipse.core.runtime.CoreException
org.eclipse.core.runtime.CoreException
void remove(String extensionPoint) throws org.eclipse.core.runtime.CoreException
org.eclipse.core.runtime.CoreException
boolean isPreferenceConfiguration()
@Deprecated ICLanguageSetting getLanguageSettingForFile(org.eclipse.core.runtime.IPath path, boolean ignoreExludeStatus)
void setExternalSettingsProviderIds(String[] ids)
ids
- the ids of externalSettinsProvider extensionsString[] getExternalSettingsProviderIds()
void updateExternalSettingsProviders(String[] ids) throws WriteAccessException
ids
- the ids of externalSettinsProvider extensionsWriteAccessException
ICProjectDescriptionManager.updateExternalSettingsProviders(String[], org.eclipse.core.runtime.IProgressMonitor)
CConfigurationStatus getConfigurationStatus()
Copyright (c) IBM Corp. and others 2004, 2020. All Rights Reserved.