Class AbstractVMInstallPage

  • All Implemented Interfaces:
    IDialogPage, IMessageProvider, IWizardPage

    public abstract class AbstractVMInstallPage
    extends WizardPage
    A wizard page used to edit the attributes of an installed JRE. A page is provided by JDT to edit standard JREs, but clients may contribute a custom page for a VM install type if required.

    A VM install page is contributed via the vmInstallPages extension point. Following is an example definition of a VM install page.

     <extension point="org.eclipse.jdt.debug.ui.vmInstallPages">
       <vmInstallPage
          vmInstallType="org.eclipse.jdt.launching.EEVMType"
          class="org.eclipse.jdt.internal.debug.ui.jres.EEVMPage">
       </vmInstallPage>
     </extension>
     
    The attributes are specified as follows:
    • vmInstallType Specifies the VM install type this wizard page is to be used for. Unique identifier corresponding to an IVMInstallType's id.
    • class Wizard page implementation. Must be a subclass of org.eclipse.jdt.debug.ui.launchConfigurations.AbstractVMInstallPage.

    Clients contributing a custom VM install page via the vmInstallPages extension point must subclass this class.

    Since:
    3.3
    • Constructor Detail

      • AbstractVMInstallPage

        protected AbstractVMInstallPage​(String pageName)
        Constructs a new page with the given page name.
        Parameters:
        pageName - the name of the page
      • AbstractVMInstallPage

        protected AbstractVMInstallPage​(String pageName,
                                        String title,
                                        ImageDescriptor titleImage)
        Creates a new wizard page with the given name, title, and image.
        Parameters:
        pageName - the name of the page
        title - the title for this wizard page, or null if none
        titleImage - the image descriptor for the title of this wizard page, or null if none
    • Method Detail

      • finish

        public abstract boolean finish()
        Called when the VM install page wizard is closed by selecting the finish button. Implementers typically override this method to store the page result (new/changed vm install returned in getSelection) into its model.
        Returns:
        if the operation was successful. Only when returned true, the wizard will close.
      • getSelection

        public abstract VMStandin getSelection()
        Returns the edited or created VM install. This method may return null if no VM install exists.
        Returns:
        the edited or created VM install.
      • setSelection

        public void setSelection​(VMStandin vm)
        Sets the VM install to be edited.
        Parameters:
        vm - the VM install to edit
      • nameChanged

        protected void nameChanged​(String newName)
        Updates the name status based on the new name. This method should be called by the page each time the VM name changes.
        Parameters:
        newName - new name of VM
      • setExistingNames

        public void setExistingNames​(String[] names)
        Sets the names of existing VMs, not including the VM being edited. This method is called by the wizard and clients should not call this method.
        Parameters:
        names - existing VM names or an empty array
      • setStatusMessage

        protected void setStatusMessage​(IStatus status)
        Sets this page's message based on the status severity.
        Parameters:
        status - status with message and severity
      • getNameStatus

        protected IStatus getNameStatus()
        Returns the current status of the name being used for the VM.
        Returns:
        status of current VM name
      • updatePageStatus

        protected void updatePageStatus()
        Updates the status message on the page, based on the status of the VM and other status provided by the page.
      • getVMStatus

        protected abstract IStatus[] getVMStatus()
        Returns a collection of status messages pertaining to the current edit status of the VM on this page. An empty collection or a collection of OK status objects indicates all is well.
        Returns:
        collection of status objects for this page