Package org.eclipse.cdt.core.build

# Interface IToolChainManager

public interface IToolChainManager
The global toolchain manager. Accessed as an OSGi service.

Since:
  6.0
Restriction:
  This interface is not intended to be implemented by clients.

## Method Summary

Modifier and Type
Method
Description
`void`
`addToolChain(IToolChain toolChain)`
Add a toolchain.
`void`
`addToolChainListener(org.eclipse.core.runtime.ISafeRunnable listener)`
Add a listener for toolchains added or removed.
`Collection<IToolChain>`
`getAllToolChains()`
Return all of the toolchains.
`IToolChainProvider`
`getProvider(String providerId)`
Return the provider with the given id
`IToolChain`
`getToolChain(String typeId, String id)`
Return the toolChain with the given type and id.
`default IToolChain`
`getToolChain(String providerId, String id, String version)`
Deprecated.
version is now irrelevant.
`default Collection<IToolChain>`
`getToolChains(String providerId)`
Deprecated.
we no longer organize toolchains by provider id.
`default Collection<IToolChain>`
`getToolChains(String providerId, String id)`
Deprecated.
toolchains no longer have multiple versions per id
`Collection<IToolChain>`
`getToolChainsMatching(Map<String,String> properties)`
Returns the list of toolchains that have the given properties.
`String`
`getToolChainTypeName(String typeId)`
Return the UI label for the toolchain type.
`void`
`removeToolChain(IToolChain toolChain)`
Remove a toolchain
`void`
`removeToolChainListener(org.eclipse.core.runtime.ISafeRunnable listener)`
Remove a listener.
`void`
`setToolChainOrder(List<IToolChain> orderedToolchains)`
Set the preference order of the toolchains.

## Method Details

### getProvider

IToolChainProvider getProvider(String providerId) throws org.eclipse.core.runtime.CoreException
Return the provider with the given id

Parameters:
  `providerId` - id
Returns:
  provider
Throws:
  `org.eclipse.core.runtime.CoreException`

### getToolChainTypeName

String getToolChainTypeName(String typeId)
Return the UI label for the toolchain type.

Parameters:
  `typeId` - type toolchain type id
Returns:
  name of the type
Since:
  6.4

### getToolChain

@Deprecated default IToolChain getToolChain(String providerId, String id, String version) throws org.eclipse.core.runtime.CoreException
Deprecated.
version is now irrelevant. id's are unique.
Return the toolchain from the given provider with the given id and version.

Parameters:
  `providerId` - id of provider
  `id` - id of toolchain
  `version` - version of toolchain
Returns:
  the toolchain
Throws:
  `org.eclipse.core.runtime.CoreException`

### getToolChain

IToolChain getToolChain(String typeId, String id) throws org.eclipse.core.runtime.CoreException
Return the toolChain with the given type and id.

Parameters:
  `typeId` - id of toolchain type
  `id` - id of toolchain
Returns:
  the toolchain
Throws:
  `org.eclipse.core.runtime.CoreException`
Since:
  6.4

### getToolChains

@Deprecated default Collection<IToolChain> getToolChains(String providerId) throws org.eclipse.core.runtime.CoreException
Deprecated.
we no longer organize toolchains by provider id.
Return the toolchains provided by the given provider

Parameters:
  `providerId` - id of provider
Returns:
  toolchains the provider provides
Throws:
  `org.eclipse.core.runtime.CoreException`

### getToolChains

@Deprecated default Collection<IToolChain> getToolChains(String providerId, String id) throws org.eclipse.core.runtime.CoreException
Deprecated.
toolchains no longer have multiple versions per id
Return all versions of toolchains with the given id provided by the given provider.

Parameters:
  `providerId` - id of provider
  `id` - id of toolchains
Returns:
  toolchains with the given id provided by the provider
Throws:
  `org.eclipse.core.runtime.CoreException`

### getToolChainsMatching

Collection<IToolChain> getToolChainsMatching(Map<String,String> properties) throws org.eclipse.core.runtime.CoreException
Returns the list of toolchains that have the given properties.

Parameters:
  `properties` - properties of the toolchains
Returns:
  the qualified toolchains
Throws:
  `org.eclipse.core.runtime.CoreException`

### getAllToolChains

Collection<IToolChain> getAllToolChains() throws org.eclipse.core.runtime.CoreException
Return all of the toolchains.

Throws:
  `org.eclipse.core.runtime.CoreException`
Since:
  6.4

### setToolChainOrder

void setToolChainOrder(List<IToolChain> orderedToolchains) throws org.eclipse.core.runtime.CoreException
Set the preference order of the toolchains. This controls the order toolchains are returned in the other methods in this interface. Often, the first toolchain in a list is the default toolchain to use in a build configuration.

Parameters:
  `orderedToolchains` -
Throws:
  `org.eclipse.core.runtime.CoreException`
Since:
  6.4

### addToolChain

void addToolChain(IToolChain toolChain)
Add a toolchain.

Parameters:
  `toolChain` - the toolchain

### removeToolChain

void removeToolChain(IToolChain toolChain)
Remove a toolchain

Parameters:
  `toolChain` - the toolchain

### addToolChainListener

void addToolChainListener(org.eclipse.core.runtime.ISafeRunnable listener)
Add a listener for toolchains added or removed. The listener is a simple runnable that is called when an event occurs.

Parameters:
  `listener` - runnable that is called when a toolchain is added or removed
Since:
  6.4

### removeToolChainListener

void removeToolChainListener(org.eclipse.core.runtime.ISafeRunnable listener)
Remove a listener.

Parameters:
  `listener` - the listener to remove
Since:
  6.4