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
  • Field Details

  • Constructor Details

    • AbstractAdvancedConfigurationTab

      public AbstractAdvancedConfigurationTab()
  • Method Details

    • 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 interface org.eclipse.debug.ui.ILaunchConfigurationTab
      Overrides:
      activated in class org.eclipse.debug.ui.AbstractLaunchConfigurationTab
    • getName

      public String getName()
    • getImage

      public org.eclipse.swt.graphics.Image getImage()
      Specified by:
      getImage in interface org.eclipse.debug.ui.ILaunchConfigurationTab
      Overrides:
      getImage in class org.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 implementation
      configuration -
      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 calling getImplementations() from a given IConfigurationElement. By default, this simply tests for equality between the language and the configurationElement's language attribute.
      Parameters:
      language - As obtained from getLanguage(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)
      Parameters:
      language - As obtained from getLanguage(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 (see getPlugin()).
      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()