Package org.eclipse.debug.core.model
Interface IProcess
- All Superinterfaces:
IAdaptable
,ITerminate
- All Known Implementing Classes:
RuntimeProcess
A process represents a program running in normal (non-debug) mode. Processes
support setting and getting of client defined attributes. This way, clients
can annotate a process with any extra information important to them. For
example, classpath annotations, or command line arguments used to launch the
process may be important to a client.
Clients may implement this interface, however, the debug plug-in provides an
implementation of this interface for a java.lang.Process
.
DebugPlugin manager = DebugPlugin.getDefault(); if (manager != null) { manager.fireDebugEventSet(new DebugEvent[] { new DebugEvent(this, DebugEvent.CREATE) }); }otherwise the UI will probably show faulty state for your process and launch.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
Attribute key for a common, optional, process property.static final String
Attribute key for a common, optional, process property.static final String
Attribute key for a common, optional, process property.static final String
Attribute key for a common, optional, process property. -
Method Summary
Modifier and TypeMethodDescriptiongetAttribute
(String key) Returns the value of a client defined attribute.int
Returns the exit value of this process.getLabel()
Returns a human-readable label for this process.Returns the launch this element originated from.Returns a proxy to the standard input, output, and error streams for this process, ornull
if not supported.void
setAttribute
(String key, String value) Sets the value of a client defined attribute.Methods inherited from interface org.eclipse.core.runtime.IAdaptable
getAdapter
Methods inherited from interface org.eclipse.debug.core.model.ITerminate
canTerminate, isTerminated, terminate
-
Field Details
-
ATTR_CMDLINE
Attribute key for a common, optional, process property. The value of this attribute is the command line a process was launched with.- Since:
- 2.1
-
ATTR_PROCESS_TYPE
Attribute key for a common, optional, process property. The value of this attribute is an identifier for the type of this process. Process types are client defined - whoever creates a process may define its type. For example, a process type could be "java", "javadoc", or "ant".- Since:
- 2.1
-
ATTR_PROCESS_LABEL
Attribute key for a common, optional, process property. The value of this attribute specifies an alternate dynamic label for a process, displayed by the console.- Since:
- 3.0
-
ATTR_PROCESS_ID
Attribute key for a common, optional, process property. The value of this attribute specifies process id, displayed in the console description or in the debug view.- Since:
- 3.19
-
-
Method Details
-
getLabel
String getLabel()Returns a human-readable label for this process.- Returns:
- a label for this process
-
getLaunch
ILaunch getLaunch()Returns the launch this element originated from.- Returns:
- the launch this process is contained in
-
getStreamsProxy
IStreamsProxy getStreamsProxy()Returns a proxy to the standard input, output, and error streams for this process, ornull
if not supported.- Returns:
- a streams proxy, or
null
if not supported
-
setAttribute
Sets the value of a client defined attribute.- Parameters:
key
- the attribute keyvalue
- the attribute value
-
getAttribute
Returns the value of a client defined attribute.- Parameters:
key
- the attribute key- Returns:
- value the String attribute value, or
null
if undefined
-
getExitValue
Returns the exit value of this process. Conventionally, 0 indicates normal termination.- Returns:
- the exit value of this process
- Throws:
DebugException
- if this process has not yet terminated
-