Class DevelServerLaunchConfigurationTab

java.lang.Object
org.eclipse.debug.ui.AbstractLaunchConfigurationTab
com.iizigo.server.launch.DevelServerLaunchConfigurationTab
All Implemented Interfaces:
IValidationMessage, IPrototypeAttributesLabelProvider, ILaunchConfigurationTab, ILaunchConfigurationTab2

public class DevelServerLaunchConfigurationTab extends AbstractLaunchConfigurationTab implements IValidationMessage
IIZI Development Server launch configuration tab used to edit/view attributes of a specific type of launch configuration.

Launch configurations are presented in a dialog, with a tab folder. Each tab manipulates one ore more attributes of a launch configuration.

A tab has the following life-cycle methods:

  • setLaunchConfigurationDialog(ILaunchConfigurationDialog) - this is the first method called on a tab after it is instantiated.
  • initializeFrom(ILaunchConfiguration) - called when a launch configuration is selected to be displayed.
  • activated(ILaunchConfigurationWorkingCopy) - called when a tab is entered.
  • deactivated(ILaunchConfigurationWorkingCopy) - called when a tab is exited.
  • performApply(ILaunchConfigurationWorkingCopy) - called when a tab is to write its values to a launch configuration.
  • dispose() - the last method called on a tab, when it is to perform any required cleanup. Note that a tab can be disposed before its control has been created.
Author:
Christopher Mindus
  • Method Details

    • getDefaultServerDirectory

      public static File getDefaultServerDirectory() throws IOException
      Gets the default location of the iiziServer.
      Throws:
      IOException - For I/O errors.
    • dispose

      public void dispose()
      Disposes of the instance.
      Specified by:
      dispose in interface ILaunchConfigurationTab
      Overrides:
      dispose in class AbstractLaunchConfigurationTab
    • setDefaults

      public void setDefaults(ILaunchConfigurationWorkingCopy configuration)
      Initializes the given launch configuration with default values for this tab. This method is called when a new launch configuration is created such that the configuration can be initialized with meaningful values.

      This method may be called before this tab's control is created.

      Specified by:
      setDefaults in interface ILaunchConfigurationTab
      Parameters:
      configuration - The launch configuration.
    • createControl

      public void createControl(Composite parent)
      Creates the top level control for this launch configuration tab under the given parent composite. This method is called once on tab creation, after setLaunchConfigurationDialog is called.
      Specified by:
      createControl in interface ILaunchConfigurationTab
      Parameters:
      parent - The parent composite.
    • initializeFrom

      public void initializeFrom(ILaunchConfiguration configuration)
      Initializes this tab's controls with values from the given launch configuration. This method is called when a configuration is selected to view or edit, after this tab's control has been created.
      Specified by:
      initializeFrom in interface ILaunchConfigurationTab
      Parameters:
      configuration - Launch configuration.
    • performApply

      public void performApply(ILaunchConfigurationWorkingCopy configuration)
      Copies values from this tab into the given launch configuration.
      Specified by:
      performApply in interface ILaunchConfigurationTab
      Parameters:
      configuration - Launch configuration.
    • isValid

      public boolean isValid(ILaunchConfiguration launchConfig)
      Returns whether this tab is in a valid state in the context of the specified launch configuration.

      This information is typically used by the launch configuration dialog to decide when it is okay to launch.

      Specified by:
      isValid in interface ILaunchConfigurationTab
      Overrides:
      isValid in class AbstractLaunchConfigurationTab
      Parameters:
      launchConfig - Launch configuration which provides context for validating this tab. This value must not be null.
      Returns:
      whether this tab is in a valid state
    • getName

      public String getName()
      Returns the name of this tab.
      Specified by:
      getName in interface ILaunchConfigurationTab
    • getImage

      public Image getImage()
      Returns the image for this tab, or null if none
      Specified by:
      getImage in interface ILaunchConfigurationTab
      Overrides:
      getImage in class AbstractLaunchConfigurationTab
    • setMessage

      public void setMessage(String newMessage, int newType)
      Set the message for this page with an indication of what type of message it is.

      The valid message types are one of IMessageProvider.NONE, IMessageProvider.INFORMATION, IMessageProvider.WARNING, or IMessageProvider.ERROR.

      Note that for backward compatibility, a message of type ERROR is different than an error message (set using setErrorMessage). An error message overrides the current message until the error message is cleared. This method replaces the current message and does not affect the error message.

      Specified by:
      setMessage in interface IValidationMessage
      Parameters:
      newMessage - The message, or null to clear the message.
      newType - The message type.
    • onValidate

      public void onValidate(boolean isValid)
      Call to inform validity of all validators.
      Specified by:
      onValidate in interface IValidationMessage
      Parameters:
      isValid - true if valid, false otherwise.
    • isDirty

      protected boolean isDirty()
      Verifies for dirty.
      Overrides:
      isDirty in class AbstractLaunchConfigurationTab
    • isConfigurationValid

      public static boolean isConfigurationValid(ILaunchConfiguration launchConfig)
      Returns whether this tab is in a valid state in the context of the specified launch configuration.

      This information is typically used by the launch configuration dialog to decide when it is okay to launch.

      Parameters:
      launchConfig - Launch configuration which provides context for validating this tab. This value must not be null.
      Returns:
      whether this tab is in a valid state