@Override public synchronized void launch(ILaunchConfiguration configuration, String mode, ILaunch launch, IProgressMonitor monitor) throws CoreException { try { fLaunch = launch; super.launch(configuration, mode, launch, monitor); } catch (CoreException e) { cleanup(launch); throw e; } fLaunch = null; }
@Override public synchronized void launch(ILaunchConfiguration configuration, String mode, ILaunch launch, IProgressMonitor monitor) throws CoreException { try { fLaunch = launch; super.launch(configuration, mode, launch, monitor); } catch (CoreException e) { cleanup(launch); throw e; } fLaunch = null; }
@Override public void handleDebugEvents(DebugEvent[] events) { for (int i = 0; i < events.length; i++) { DebugEvent event = events[i]; Object eventSource = event.getSource(); switch(event.getKind()) { // Delete the HTML file used for the launch case DebugEvent.TERMINATE : if (eventSource != null) { ILaunch launch = null; if (eventSource instanceof IProcess) { IProcess process = (IProcess) eventSource; launch = process.getLaunch(); } else if (eventSource instanceof IDebugTarget) { IDebugTarget debugTarget = (IDebugTarget) eventSource; launch = debugTarget.getLaunch(); } if (launch != null) { cleanup(launch); } } break; } } }
@Override public void handleDebugEvents(DebugEvent[] events) { for (int i = 0; i < events.length; i++) { DebugEvent event = events[i]; Object eventSource = event.getSource(); switch(event.getKind()) { // Delete the HTML file used for the launch case DebugEvent.TERMINATE : if (eventSource != null) { ILaunch launch = null; if (eventSource instanceof IProcess) { IProcess process = (IProcess) eventSource; launch = process.getLaunch(); } else if (eventSource instanceof IDebugTarget) { IDebugTarget debugTarget = (IDebugTarget) eventSource; launch = debugTarget.getLaunch(); } if (launch != null) { cleanup(launch); } } break; } } }