public abstract class AbstractVMInstall extends java.lang.Object implements IVMInstall, IVMInstall2, IVMInstall3
Clients implementing VM installs must subclass this class.
Provisional API: This class/interface is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.Constructor and Description |
---|
AbstractVMInstall(IVMInstallType type,
java.lang.String id)
Constructs a new VM install.
|
Modifier and Type | Method and Description |
---|---|
protected void |
abort(java.lang.String message,
java.lang.Throwable exception,
int code)
Throws a core exception with an error status object built from the given
message, lower level exception, and error code.
|
boolean |
equals(java.lang.Object object) |
java.lang.String |
getId()
Returns the id for this VM.
|
java.io.File |
getInstallLocation()
Returns the root directory of the install location of this VM.
|
java.net.URL |
getJavadocLocation()
Returns the jsdoc location associated with this VM install.
|
java.lang.String |
getJavaVersion()
Returns a string representing the
java.version system property
of this VM install, or null if unknown. |
LibraryLocation[] |
getLibraryLocations()
Returns the library locations of this IVMInstall.
|
java.lang.String |
getName()
Returns the display name of this VM.
|
java.lang.String |
getVMArgs()
Returns VM arguments to be used with this vm install whenever this
VM is launched as a raw string, or
null if none. |
java.lang.String[] |
getVMArguments()
Returns VM arguments to be used with this vm install whenever this
VM is launched as they should be passed to the command line, or
null if none. |
IVMInstallType |
getVMInstallType()
Returns the VM type of this VM.
|
IVMRunner |
getVMRunner(java.lang.String mode)
Returns a VM runner that runs this installed VM in the given mode.
|
int |
hashCode() |
void |
setInstallLocation(java.io.File installLocation)
Sets the root directory of the install location of this VM.
|
void |
setJavadocLocation(java.net.URL url)
Sets the jsdoc location associated with this VM install.
|
void |
setLibraryLocations(LibraryLocation[] locations)
Sets the library locations of this IVMInstall.
|
void |
setName(java.lang.String name)
Sets the display name of this VM.
|
protected void |
setNotify(boolean notify)
Whether this VM should fire property change notifications.
|
void |
setVMArgs(java.lang.String vmArgs)
Sets VM arguments to be used with this vm install whenever this
VM is launched as a raw string, possibly
null . |
void |
setVMArguments(java.lang.String[] vmArgs)
Sets VM arguments to be used with this vm install whenever this
VM is launched, possibly
null . |
public AbstractVMInstall(IVMInstallType type, java.lang.String id)
type
- The type of this VM install.
Must not be null
id
- The unique identifier of this VM instance
Must not be null
.java.lang.IllegalArgumentException
- if any of the required
parameters are null
.public java.lang.String getId()
IVMInstall
getId
in interface IVMInstall
null
.public java.lang.String getName()
IVMInstall
getName
in interface IVMInstall
null
.public void setName(java.lang.String name)
IVMInstall
setName
in interface IVMInstall
name
- the display name of this VMpublic java.io.File getInstallLocation()
IVMInstall
getInstallLocation
in interface IVMInstall
null
.public void setInstallLocation(java.io.File installLocation)
IVMInstall
setInstallLocation
in interface IVMInstall
installLocation
- the root directory of this VM installationpublic IVMInstallType getVMInstallType()
IVMInstall
getVMInstallType
in interface IVMInstall
public IVMRunner getVMRunner(java.lang.String mode)
IVMInstall
getVMRunner
in interface IVMInstall
mode
- the mode the VM should be launched in; one of the constants
declared in org.eclipse.debug.core.ILaunchManager
null
if the given mode
is not supported by this VM.org.eclipse.debug.core.ILaunchManager
public LibraryLocation[] getLibraryLocations()
IVMInstall
JavaRuntime.getLibraryLocations(IVMInstall)
to determine the libraries associated with this VM install.getLibraryLocations
in interface IVMInstall
null
to indicate that this VM install uses
the default library locations associated with this VM's install type.IVMInstall.setLibraryLocations(LibraryLocation[])
public void setLibraryLocations(LibraryLocation[] locations)
IVMInstall
setLibraryLocations
in interface IVMInstall
locations
- The LibraryLocation
s to associate
with this IVMInstall.
May be null
to indicate that this VM install uses
the default library locations associated with this VM's install type.public java.net.URL getJavadocLocation()
IVMInstall
getJavadocLocation
in interface IVMInstall
null
if nonepublic void setJavadocLocation(java.net.URL url)
IVMInstall
setJavadocLocation
in interface IVMInstall
url
- a url pointing to the jsdoc location associated with
this VM installprotected void setNotify(boolean notify)
notify
- public boolean equals(java.lang.Object object)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public java.lang.String[] getVMArguments()
IVMInstall
null
if none.getVMArguments
in interface IVMInstall
null
if nonepublic void setVMArguments(java.lang.String[] vmArgs)
IVMInstall
null
. This is equivalent
to setVMArgs(String)
with whitespace character delimited
arguments.setVMArguments
in interface IVMInstall
vmArgs
- VM arguments to be used with this vm install whenever this
VM is launched, possibly null
public java.lang.String getVMArgs()
IVMInstall2
null
if none.getVMArgs
in interface IVMInstall2
null
if nonepublic void setVMArgs(java.lang.String vmArgs)
IVMInstall2
null
.setVMArgs
in interface IVMInstall2
vmArgs
- VM arguments to be used with this vm install whenever this
VM is launched as a raw string, possibly null
public java.lang.String getJavaVersion()
IVMInstall2
java.version
system property
of this VM install, or null
if unknown.getJavaVersion
in interface IVMInstall2
java.version
system property
of this VM install, or null
if unknown.protected void abort(java.lang.String message, java.lang.Throwable exception, int code) throws CoreException
message
- the status messageexception
- lower level exception associated with the error, or
null
if nonecode
- error codeCoreException
- the "abort" core exceptionCopyright (c) IBM Corp. and others 2000, 2016. All Rights Reserved.