Interface LaunchingConnector
- All Superinterfaces:
Connector
A connector which can launch a target VM before connecting to it.
- Since:
- 1.3
-
Nested Class Summary
Nested classes/interfaces declared in interface Connector
Connector.Argument, Connector.BooleanArgument, Connector.IntegerArgument, Connector.SelectedArgument, Connector.StringArgumentModifier and TypeInterfaceDescriptionstatic interfaceSpecification for and value of a Connector argument.static interfaceSpecification for and value of a Connector argument, whose value is Boolean.static interfaceSpecification for and value of a Connector argument, whose value is an integer.static interfaceSpecification for and value of a Connector argument, whose value is a String selected from a list of choices.static interfaceSpecification for and value of a Connector argument, whose value is a String. -
Method Summary
Modifier and TypeMethodDescriptionlaunch(Map<String, ? extends Connector.Argument> arguments) Launches an application and connects to its VM.Methods declared in interface Connector
defaultArguments, description, name, transportModifier and TypeMethodDescriptionReturns the arguments accepted by this Connector and their default values.Returns a human-readable description of this connector and its purpose.name()Returns a short identifier for the connector.Returns the transport mechanism used by this connector to establish connections with a target VM.
-
Method Details
-
launch
VirtualMachine launch(Map<String, ? extends Connector.Argument> arguments) throws IOException, IllegalConnectorArgumentsException, VMStartException Launches an application and connects to its VM. Properties of the launch (possibly including options, main class, and arguments) are specified inarguments. The argument map associates argument name strings to instances ofConnector.Argument. The default argument map for a connector can be obtained throughConnector.defaultArguments(). Argument map values can be changed, but map entries should not be added or deleted.A target VM launched by a launching connector is not guaranteed to be stable until after the
VMStartEventhas been received.Important note: If a target VM is launched through this funcctions, its output and error streams must be read as it executes. These streams are available through the
Processobject returned byVirtualMachine.process(). If the streams are not periodically read, the target VM will stop executing when the buffers for these streams are filled.- Parameters:
arguments- the argument map to be used in launching the VM.- Returns:
- the
VirtualMachinemirror of the target VM. - Throws:
IOException- when unable to launch. Specific exceptions are dependent on the Connector implementation in use.IllegalConnectorArgumentsException- when one of the connector arguments is invalid.VMStartException- when the VM was successfully launched, but terminated with an error before a connection could be established.
-