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 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 in IProject.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:
      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 configuration
      cConfig - 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