Interface IVMInstallType

  • All Known Implementing Classes:
    AbstractVMInstallType

    public interface IVMInstallType
    Represents a particular type of VM for which there may be any number of VM installations. An example of a VM type is the standard JRE which might have instances corresponding to different installed versions such as JRE 1.2.2 and JRE 1.3.

    This interface is intended to be implemented by clients that contribute to the "org.eclipse.jdt.launching.vmInstallTypes" extension point.

    See Also:
    IVMInstall
    • Method Detail

      • createVMInstall

        IVMInstall createVMInstall​(String id)
        Creates a new instance of this VM Install type. The newly created IVMInstall is managed by this IVMInstallType.
        Parameters:
        id - An id String that must be unique within this IVMInstallType.
        Returns:
        the newly created VM instance
        Throws:
        IllegalArgumentException - If the id exists already.
      • findVMInstall

        IVMInstall findVMInstall​(String id)
        Finds the VM with the given id.
        Parameters:
        id - the VM id
        Returns:
        a VM instance, or null if not found
      • findVMInstallByName

        IVMInstall findVMInstallByName​(String name)
        Finds the VM with the given name.
        Parameters:
        name - the VM name
        Returns:
        a VM instance, or null if not found
        Since:
        2.0
      • disposeVMInstall

        void disposeVMInstall​(String id)
        Remove the VM associated with the given id from the set of VMs managed by this VM type. Has no effect if a VM with the given id is not currently managed by this type. A VM install that is disposed may not be used anymore.
        Parameters:
        id - the id of the VM to be disposed.
      • getVMInstalls

        IVMInstall[] getVMInstalls()
        Returns all VM instances managed by this VM type.
        Returns:
        the list of VM instances managed by this VM type
      • getName

        String getName()
        Returns the display name of this VM type.
        Returns:
        the name of this IVMInstallType
      • getId

        String getId()
        Returns the globally unique id of this VM type. Clients are responsible for providing a unique id.
        Returns:
        the id of this IVMInstallType
      • validateInstallLocation

        IStatus validateInstallLocation​(File installLocation)
        Validates the given location of a VM installation.

        For example, an implementation might check whether the VM executable is present.

        Parameters:
        installLocation - the root directory of a potential installation for this type of VM
        Returns:
        a status object describing whether the install location is valid
      • detectInstallLocation

        File detectInstallLocation()
        Tries to detect an installed VM that matches this VM install type. Typically, this method will detect the VM installation the Eclipse platform runs on. Implementers should return null if they can't assure that a given vm install matches this IVMInstallType.
        Returns:
        The location of an VM installation that can be used with this VM install type, or null if unable to locate an installed VM.
      • getDefaultLibraryLocations

        LibraryLocation[] getDefaultLibraryLocations​(File installLocation)
        Returns a collection of LibraryLocations that represent the default system libraries of this VM install type, if a VM was installed at the given installLocation. The returned LibraryLocations may not exist if the installLocation is not a valid install location.
        Parameters:
        installLocation - home location
        Returns:
        default library locations based on the given installLocation.
        Since:
        2.0
        See Also:
        LibraryLocation, validateInstallLocation(File)