public JavacMarkerCreator(TextConsole console, boolean useCustomMessage) { fConsole = console; fUseCustomMessage = useCustomMessage; if (fConsole instanceof ProcessConsole) { fProcess = ((ProcessConsole) fConsole).getProcess(); } }
protected IProcess getProcess() { return fConsole != null ? fConsole.getProcess() : null; }
@Override public void update() { IProcess process = fConsole.getProcess(); setEnabled(process.canTerminate()); }
@Override public void run() { IProcess process = fConsole.getProcess(); List<ITerminate> targets = collectTargets(process); targets.add(process); DebugCommandService service = DebugCommandService.getService(fWindow); service.executeCommand(ITerminateHandler.class, targets.toArray(), null); }
protected ILaunch getLaunch() { if (fConsoleView == null) { return fLaunch; } // else get dynmically, as this action was created via plug-in XML view contribution IConsole console = fConsoleView.getConsole(); if (console instanceof ProcessConsole) { ProcessConsole pconsole = (ProcessConsole) console; return pconsole.getProcess().getLaunch(); } return null; } }
/** * Returns the console for the given process, or <code>null</code> if none. * * @param process * @return the console for the given process, or <code>null</code> if none */ public IConsole getConsole(IProcess process) { IConsoleManager manager = ConsolePlugin.getDefault().getConsoleManager(); IConsole[] consoles = manager.getConsoles(); for (int i = 0; i < consoles.length; i++) { IConsole console = consoles[i]; if (console instanceof ProcessConsole) { ProcessConsole pc = (ProcessConsole)console; if (pc.getProcess().equals(process)) { return pc; } } } return null; }
/** * Notify listeners when name changes. * * @see org.eclipse.debug.core.IDebugEventSetListener#handleDebugEvents(org.eclipse.debug.core.DebugEvent[]) */ @Override public void handleDebugEvents(DebugEvent[] events) { for (int i = 0; i < events.length; i++) { DebugEvent event = events[i]; if (event.getSource().equals(getProcess())) { if (event.getKind() == DebugEvent.TERMINATE) { closeStreams(); DebugPlugin.getDefault().removeDebugEventListener(this); } resetName(); } } }
@Override public void connect(TextConsole console) { if (console instanceof ProcessConsole) { fConsole = (ProcessConsole)console; IConsoleLineTracker[] lineTrackers = DebugUIPlugin.getDefault().getProcessConsoleManager().getLineTrackers(fConsole.getProcess()); for (int i = 0; i < lineTrackers.length; i++) { lineTrackers[i].init(fConsole); addConsoleListener(lineTrackers[i]); } fConsole.addPropertyChangeListener(this); } }
IProcess process = getProcess(); ILaunchConfiguration config = process.getLaunch().getLaunchConfiguration();
/** * Computes and returns the image descriptor for this console. * * @return an image descriptor for this console or <code>null</code> */ protected ImageDescriptor computeImageDescriptor() { ILaunchConfiguration configuration = getProcess().getLaunch().getLaunchConfiguration(); if (configuration != null) { ILaunchConfigurationType type; try { type = configuration.getType(); return DebugPluginImages.getImageDescriptor(type.getIdentifier()); } catch (CoreException e) { DebugUIPlugin.log(e); } } return null; }
@Override public void init(IPageBookViewPage page, IConsole console) { fPage = page; fConsole = (ProcessConsole) console; fRemoveTerminated = new ConsoleRemoveLaunchAction(fConsole.getProcess().getLaunch()); fRemoveAllTerminated = new ConsoleRemoveAllTerminatedAction(); fTerminate = new ConsoleTerminateAction(page.getSite().getWorkbenchWindow(), fConsole); fStdOut = new ShowStandardOutAction(); fStdErr = new ShowStandardErrorAction(); fView = (IConsoleView) fPage.getSite().getPage().findView(IConsoleConstants.ID_CONSOLE_VIEW); DebugPlugin.getDefault().addDebugEventListener(this); DebugUITools.getDebugContextManager().getContextService(fPage.getSite().getWorkbenchWindow()).addDebugContextListener(this); // contribute to toolbar IActionBars actionBars = fPage.getSite().getActionBars(); configureToolBar(actionBars.getToolBarManager()); // create handler and submissions for EOF fEOFHandler = new EOFHandler(); }