public class ExternalSystemProcessHandler extends BuildProcessHandler implements AnsiEscapeDecoder.ColoredTextAcceptor, Disposable
Disposable.Parent
SILENTLY_DESTROY_ON_CLOSE, TERMINATION_REQUESTED
Constructor and Description |
---|
ExternalSystemProcessHandler(ExternalSystemTask task,
java.lang.String executionName) |
Modifier and Type | Method and Description |
---|---|
protected void |
closeInput() |
void |
coloredTextAvailable(java.lang.String text,
Key attributes) |
protected void |
destroyProcessImpl()
Performs process destruction.
|
boolean |
detachIsDefault() |
protected void |
detachProcessImpl()
Performs detaching process.
|
void |
dispose()
Usually not invoked directly, see class javadoc.
|
java.lang.String |
getExecutionName() |
java.io.OutputStream |
getProcessInput() |
void |
notifyProcessTerminated(int exitCode) |
void |
notifyTextAvailable(java.lang.String text,
Key outputType) |
forceProcessDetach
addProcessListener, addProcessListener, destroyProcess, detachProcess, getExitCode, isProcessTerminated, isProcessTerminating, isSilentlyDestroyOnClose, isStartNotified, notifyProcessDetached, removeProcessListener, startNotify, waitFor, waitFor
changeUserMap, clearUserData, clone, copyCopyableDataTo, copyUserDataTo, getCopyableUserData, getUserData, getUserDataString, getUserMap, isUserDataEmpty, putCopyableUserData, putUserData, putUserDataIfAbsent, replace, setUserMap
public ExternalSystemProcessHandler(ExternalSystemTask task, java.lang.String executionName)
public java.lang.String getExecutionName()
getExecutionName
in class BuildProcessHandler
public void notifyTextAvailable(java.lang.String text, Key outputType)
notifyTextAvailable
in class ProcessHandler
protected void destroyProcessImpl()
ProcessHandler
This is an internal implementation of ProcessHandler.destroyProcess()
. All sub-classes must implement this method and perform the
destruction in this method. This method is called from ProcessHandler.destroyProcess()
and it can be in any thread including the
event dispatcher thread. You should avoid doing any expensive operation directly in this method. Instead, you may post the work to
background thread and return without waiting for it. If the performed destruction led to process termination,
ProcessHandler.notifyProcessTerminated(int)
must be called in any thread (not necessary from this method).
destroyProcessImpl
in class ProcessHandler
protected void detachProcessImpl()
ProcessHandler
This is an internal implementation of ProcessHandler.detachProcess()
. All sub-classes must implement this method and perform the
detaching in this method. This method is called from ProcessHandler.detachProcess()
and it can be in any thread including the
event dispatcher thread. You should avoid doing any expensive operation directly in this method. Instead, you may post the work to
background thread and return without waiting for it. If the performed detaching is completed,
ProcessHandler.notifyProcessTerminated(int)
must be called in any thread (not necessary from this method).
detachProcessImpl
in class ProcessHandler
public boolean detachIsDefault()
detachIsDefault
in class ProcessHandler
public java.io.OutputStream getProcessInput()
getProcessInput
in class ProcessHandler
public void notifyProcessTerminated(int exitCode)
notifyProcessTerminated
in class ProcessHandler
public void coloredTextAvailable(java.lang.String text, Key attributes)
coloredTextAvailable
in interface AnsiEscapeDecoder.ColoredTextAcceptor
protected void closeInput()
public void dispose()
Disposable
dispose
in interface Disposable