package sk.stuba.fiit.perconik.core.debug.listeners; import org.eclipse.ui.IWorkbench; import sk.stuba.fiit.perconik.core.debug.AbstractDebugListener; import sk.stuba.fiit.perconik.core.debug.Debug; import sk.stuba.fiit.perconik.core.debug.runtime.DebugConsole; import sk.stuba.fiit.perconik.core.listeners.WorkbenchListener; public final class WorkbenchDebugListener extends AbstractDebugListener implements WorkbenchListener { public WorkbenchDebugListener() {} public WorkbenchDebugListener(final DebugConsole console) { super(console); } public void postStartup(final IWorkbench workbench) { this.printHeader("Workbench post startup"); this.printWorkbench(workbench); } public boolean preShutdown(final IWorkbench workbench, final boolean forced) { this.printHeader("Workbench pre shutdown"); this.printWorkbench(workbench); this.printLine("forced", forced); return true; } public void postShutdown(final IWorkbench workbench) { this.printHeader("Workbench post shutdown"); this.printWorkbench(workbench); } private void printWorkbench(final IWorkbench workbench) { this.put(Debug.dumpWorkbench(workbench)); } }