Class AbstractAdvancedConfigurationTab
- java.lang.Object
-
- org.eclipse.debug.ui.AbstractLaunchConfigurationTab
-
- org.eclipse.epsilon.common.dt.launching.tabs.AbstractAdvancedConfigurationTab
-
- All Implemented Interfaces:
org.eclipse.debug.core.IPrototypeAttributesLabelProvider
,org.eclipse.debug.ui.ILaunchConfigurationTab
,org.eclipse.debug.ui.ILaunchConfigurationTab2
- Direct Known Subclasses:
EclAdvancedConfigurationTab
,EglAdvancedConfigurationTab
,EmlAdvancedConfigurationTab
,EolAdvancedConfigurationTab
,EplAdvancedConfigurationTab
,EtlAdvancedConfigurationTab
,EvlAdvancedConfigurationTab
,FlockAdvancedConfigurationTab
,PinsetAdvancedConfigurationTab
public abstract class AbstractAdvancedConfigurationTab extends org.eclipse.debug.ui.AbstractLaunchConfigurationTab
The Advanced configuration tab allows advanced options to be configured. As a minimum, this tab provides a selection of alternative module implementations for each language. Each language can provide its own advanced options that can alter the behaviour of the module (e.g. Evl has an "optimise constraints to select operations" option). Each alternative module implementation can further provide additional options (e.g. number of cores for parallel execution or db type/connection for incremental).- Since:
- 1.6
- Author:
- Horacio Hoyos Rodriguez
-
-
Constructor Summary
Constructors Constructor Description AbstractAdvancedConfigurationTab()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
activated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy workingCopy)
void
createControl(org.eclipse.swt.widgets.Composite parent)
void
enableApply()
org.eclipse.swt.graphics.Image
getImage()
Map<String,ModuleImplementationExtension>
getImplementations()
protected List<String>
getImplementations(org.eclipse.debug.core.ILaunchConfiguration configuration)
The available implementations are extracted from the moduleImplementation extension point, based on the language provided by the plugin (seegetPlugin()
).abstract String
getLanguage(org.eclipse.debug.core.ILaunchConfiguration configuration)
Get the name of the language being configuredString
getName()
abstract EpsilonPlugin
getPlugin()
void
initializeFrom(org.eclipse.debug.core.ILaunchConfiguration configuration)
void
performApply(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy configuration)
void
setImplementations(Map<String,ModuleImplementationExtension> implementations)
protected boolean
shouldConfigurationElementBeIncludedAsAnImplementation(String language, org.eclipse.core.runtime.IConfigurationElement configurationElement)
Used by subclasses to control flexibility of what languages should be included when callinggetImplementations()
from a given IConfigurationElement.protected boolean
shouldImplementationBeIncludedInDropDown(String implName, org.eclipse.debug.core.ILaunchConfiguration configuration)
Whether to include the given option in the implementations drop-down combo list.protected boolean
shouldImplementationBeRemoved(String language, org.eclipse.core.runtime.IConfigurationElement configurationElement)
Called ifshouldConfigurationElementBeIncludedAsAnImplementation(String, IConfigurationElement)
is false for the given inputs.protected void
updateAvailableImpls(org.eclipse.debug.core.ILaunchConfiguration configuration)
This method updates the drop-down list of available implementations.-
Methods inherited from class org.eclipse.debug.ui.AbstractLaunchConfigurationTab
canSave, createCheckButton, createPushButton, createRadioButton, createSeparator, createUpdateJob, createVerticalSpacer, deactivated, dispose, getAttributeLabel, getAttributesLabelsForPrototype, getControl, getErrorMessage, getHelpContextId, getId, getLaunchConfigurationDialog, getLaunchManager, getMessage, getShell, getUpdateJobDelay, getWarningMessage, initializeAttributes, isDirty, isValid, launched, scheduleUpdateJob, setAttribute, setControl, setDirty, setErrorMessage, setHelpContextId, setLaunchConfigurationDialog, setMessage, setWarningMessage, updateLaunchConfigurationDialog
-
-
-
-
Field Detail
-
IMPL_NAME
public static final String IMPL_NAME
- See Also:
- Constant Field Values
-
implName
protected String implName
-
-
Method Detail
-
createControl
public void createControl(org.eclipse.swt.widgets.Composite parent)
-
initializeFrom
public void initializeFrom(org.eclipse.debug.core.ILaunchConfiguration configuration)
-
performApply
public void performApply(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy configuration)
-
activated
public void activated(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy workingCopy)
- Specified by:
activated
in interfaceorg.eclipse.debug.ui.ILaunchConfigurationTab
- Overrides:
activated
in classorg.eclipse.debug.ui.AbstractLaunchConfigurationTab
-
getName
public String getName()
-
getImage
public org.eclipse.swt.graphics.Image getImage()
- Specified by:
getImage
in interfaceorg.eclipse.debug.ui.ILaunchConfigurationTab
- Overrides:
getImage
in classorg.eclipse.debug.ui.AbstractLaunchConfigurationTab
-
getPlugin
public abstract EpsilonPlugin getPlugin()
-
getLanguage
public abstract String getLanguage(org.eclipse.debug.core.ILaunchConfiguration configuration)
Get the name of the language being configured- Parameters:
configuration
- the eclipse launch configuration- Since:
- 1.6
-
updateAvailableImpls
protected final void updateAvailableImpls(org.eclipse.debug.core.ILaunchConfiguration configuration)
This method updates the drop-down list of available implementations. If no alternatives exist, the combo (or the parent) can be disabled, but should show the default one.- Parameters:
configuration
- the Eclipse launch configuration
-
shouldImplementationBeIncludedInDropDown
protected boolean shouldImplementationBeIncludedInDropDown(String implName, org.eclipse.debug.core.ILaunchConfiguration configuration)
Whether to include the given option in the implementations drop-down combo list.- Parameters:
implName
- The name of the implementationconfiguration
-- Returns:
- Whether it should be included
-
shouldConfigurationElementBeIncludedAsAnImplementation
protected boolean shouldConfigurationElementBeIncludedAsAnImplementation(String language, org.eclipse.core.runtime.IConfigurationElement configurationElement)
Used by subclasses to control flexibility of what languages should be included when callinggetImplementations()
from a given IConfigurationElement. By default, this simply tests for equality between the language and the configurationElement's language attribute.- Parameters:
language
- As obtained fromgetLanguage(ILaunchConfiguration)
configurationElement
- Elements from the extension point.- Returns:
- Whether the language from the configuration element should be included.
-
shouldImplementationBeRemoved
protected boolean shouldImplementationBeRemoved(String language, org.eclipse.core.runtime.IConfigurationElement configurationElement)
Called ifshouldConfigurationElementBeIncludedAsAnImplementation(String, IConfigurationElement)
is false for the given inputs.- Parameters:
language
- As obtained fromgetLanguage(ILaunchConfiguration)
configurationElement
- Elements from the extension point.- Returns:
- Whether to remove this implementation.
-
getImplementations
protected final List<String> getImplementations(org.eclipse.debug.core.ILaunchConfiguration configuration)
The available implementations are extracted from the moduleImplementation extension point, based on the language provided by the plugin (seegetPlugin()
).- Parameters:
configuration
- the eclipse launch configuration- Returns:
- A list of the names of the available module implementations for the language
- Throws:
org.eclipse.core.runtime.CoreException
- if the configuration dialog of an implementation can not be created
-
getImplementations
public Map<String,ModuleImplementationExtension> getImplementations()
-
setImplementations
public void setImplementations(Map<String,ModuleImplementationExtension> implementations)
-
enableApply
public void enableApply()
-
-