Package org.eclipse.cdt.core.build
Interface ICBuildConfigurationManager
public interface ICBuildConfigurationManager
The OSGi service that manages the mapping from platform build configuration
to CDT build configuration.
- Since:
- 6.0
- Restriction:
- This interface is not intended to be implemented by clients.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addBuildConfiguration
(org.eclipse.core.resources.IBuildConfiguration buildConfig, ICBuildConfiguration cConfig) Called by providers to add new build configurations as they are created.org.eclipse.core.resources.IBuildConfiguration
createBuildConfiguration
(ICBuildConfigurationProvider provider, org.eclipse.core.resources.IProject project, String configName, org.eclipse.core.runtime.IProgressMonitor monitor) Create a new Platform Build configuration to be owned by a Core Build config provider.getBuildConfiguration
(org.eclipse.core.resources.IBuildConfiguration buildConfig) Return the CDT build configuration associated with the given Platform build configuration.getBuildConfiguration
(org.eclipse.core.resources.IProject project, IToolChain toolChain, String launchMode, ILaunchTarget launchTarget, org.eclipse.core.runtime.IProgressMonitor monitor) Finds an existing Core Build configuration or creates a new one if one does not exist.getProvider
(String id) Return the build configuration provider with the given id.boolean
hasConfiguration
(ICBuildConfigurationProvider provider, org.eclipse.core.resources.IProject project, String configName) Return whether the given project has a configuration with the given configName.boolean
supports
(org.eclipse.core.resources.IProject project) Does this build system support this project.
-
Method Details
-
getProvider
Return the build configuration provider with the given id.- Parameters:
id
-- Returns:
- build configuration provider
-
hasConfiguration
boolean hasConfiguration(ICBuildConfigurationProvider provider, org.eclipse.core.resources.IProject project, String configName) throws org.eclipse.core.runtime.CoreException Return whether the given project has a configuration with the given configName.- Parameters:
provider
-project
-configName
-- Returns:
- true if project has the named config
- Throws:
org.eclipse.core.runtime.CoreException
- Since:
- 6.4
-
createBuildConfiguration
org.eclipse.core.resources.IBuildConfiguration createBuildConfiguration(ICBuildConfigurationProvider provider, org.eclipse.core.resources.IProject project, String configName, org.eclipse.core.runtime.IProgressMonitor monitor) throws org.eclipse.core.runtime.CoreException Create a new Platform Build configuration to be owned by a Core Build config provider.- Parameters:
provider
- The project's Core Build config provider. Must not be null.project
- Project in which the Platform Build configuration is created. Must not be null.configName
- The Core Build config name to be used as part of the the Platform Build configuration name. Must not be null.monitor
-- Returns:
- new Platform Build configuration. Not null.
- Throws:
org.eclipse.core.runtime.CoreException
- Reasons include the reasons given inIProject.setDescription(org.eclipse.core.resources.IProjectDescription, IProgressMonitor)
-
getBuildConfiguration
ICBuildConfiguration getBuildConfiguration(org.eclipse.core.resources.IProject project, IToolChain toolChain, String launchMode, ILaunchTarget launchTarget, org.eclipse.core.runtime.IProgressMonitor monitor) throws org.eclipse.core.runtime.CoreException Finds an existing Core Build configuration or creates a new one if one does not exist. The project's ICBuildConfigurationProvider is used to attempt to get an existing configuration or create a new one.- Parameters:
project
- Project to associate this Core Build Configuration to. Must not be null.toolChain
- Toolchain to associate with this ICBuildConfiguration. Must not be null.launchMode
- Launch mode (eg "debug") to associate with this ICBuildConfiguration. Must not be null.launchTarget
- Launch target to associate with this ICBuildConfiguration. Must not be null.monitor
-- Returns:
- a Core Build configuration matching the supplied parameters. Not null.
- Throws:
org.eclipse.core.runtime.CoreException
- Reasons include:- The project does not exist.
- The project is not open.
- The project's
ICBuildConfigurationProvider.getCBuildConfiguration(IBuildConfiguration, String)
fails. - The project's
ICBuildConfigurationProvider
is not found. - There is a problem accessing the toolchain.
- Since:
- 9.0
-
addBuildConfiguration
void addBuildConfiguration(org.eclipse.core.resources.IBuildConfiguration buildConfig, ICBuildConfiguration cConfig) Called by providers to add new build configurations as they are created.- Parameters:
buildConfig
- platform build configurationcConfig
- CDT build configuration
-
getBuildConfiguration
ICBuildConfiguration getBuildConfiguration(org.eclipse.core.resources.IBuildConfiguration buildConfig) throws org.eclipse.core.runtime.CoreException Return the CDT build configuration associated with the given Platform build configuration.- Parameters:
buildConfig
-- Returns:
- the matching CDT build configuration
- Throws:
org.eclipse.core.runtime.CoreException
-
supports
boolean supports(org.eclipse.core.resources.IProject project) throws org.eclipse.core.runtime.CoreException Does this build system support this project. This is determined by searching the build configuration providers looking to see if any of them support this project.- Parameters:
project
-- Returns:
- is this project supported by this build system
- Throws:
org.eclipse.core.runtime.CoreException
- Since:
- 6.1
-