@Override protected void killTool(final IProgressMonitor monitor) { fRjs.setClosed(true); final ToolProcess consoleProcess = getTool(); // TODO: kill remote command? final IProcess[] processes = consoleProcess.getLaunch().getProcesses(); for (int i = 0; i < processes.length; i++) { if (processes[i] != consoleProcess && !processes[i].isTerminated()) { try { processes[i].terminate(); } catch (final Exception e) { } } } }
@Override protected void clear() { fRjs.setClosed(true); super.clear(); if (fEmbedded && !isDisconnected()) { try { Naming.unbind(fAddress.getAddress()); } catch (final Throwable e) { } } fRjs.disposeAllGraphics(); if (fRjsId > 0) { RjsComConfig.unregisterClientComHandler(fRjsId); fRjsId = 0; } }