public abstract class ServerConnector extends Connector
startListening()
waiting for a debuggee
process to start. The debugge process can be started by the extension or
the IDE. When the debuggee process is launched, the listening debugger will
automatically accept the connection.
IDE providers must provide an implementation of this interface. Extension
writers can access the Connector
through the
Debugger.getServerConnector(Context)
method.OPTION_CLASSPATH, OPTION_DEBUG_FIRST, OPTION_DEBUG_LAST, OPTION_JAVA_EXECUTABLE, OPTION_JAVA_OPTIONS, OPTION_JVM, OPTION_MAIN_CLASS, OPTION_PROGRAM_ARGUMENTS
Constructor and Description |
---|
ServerConnector() |
Modifier and Type | Method and Description |
---|---|
boolean |
isListening()
Check if the debugger is listening for a debuggee connection.
|
void |
startListening()
Tell the debugger to start listening for and accept a connection
from a debuggee.
|
protected abstract void |
startListeningImpl()
IDE service providers implement this method to start listening.
|
void |
stopListening()
Tell the listening debugger to stop listening.
|
protected abstract void |
stopListeningImpl()
IDE service providers implement this method to stop listening.
|
getContext, getOptions, isConnected, isFinished, startDebuggee
public final void startListening() throws java.io.IOException
Connector.startDebuggee(Map)
.
To tell the debugger to stop listening before it accepts a
connection, (for example, if the extension was unable to start the
debuggee process successfully), the extension should call
stopListening()
.
If this ServerConnector has already accepted a connection (and
has automatically stopped listening), it may or may not be able
to start listening again. If it does not support listening for
another connection, this method will throw
UnsupportedOperationException
.java.io.IOException
- if this connector is unable to start
listening.java.lang.UnsupportedOperationException
- if this connector has
already accepted a connection and does not support listening for
another connection.protected abstract void startListeningImpl() throws java.io.IOException
java.io.IOException
- if this connector is unable to start listening.public final boolean isListening()
public final void stopListening()
protected abstract void stopListeningImpl()