1
/*******************************************************************************
2
* Copyright (c) 2013 Red Hat.
3
* All rights reserved. This program and the accompanying materials
4
* are made available under the terms of the Eclipse Public License v1.0
5
* which accompanies this distribution, and is available at
6
* http://www.eclipse.org/legal/epl-v10.html
8
*******************************************************************************/
10
package org.eclipse.linuxtools.systemtap.graphingapi.ui.widgets;
12
import java.io.PrintWriter;
13
import java.io.StringWriter;
15
import org.eclipse.core.runtime.IStatus;
16
import org.eclipse.core.runtime.Status;
17
import org.eclipse.jface.dialogs.ErrorDialog;
18
import org.eclipse.linuxtools.internal.systemtap.graphingapi.ui.GraphingAPIUIPlugin;
19
import org.eclipse.ui.PlatformUI;
22
* A convenience class for showing error dialogs which display the full stack
23
* trace in the details section.
27
public class ExceptionErrorDialog {
29
public static int openError(String message, Exception e){
30
StringWriter writer = new StringWriter();
31
e.printStackTrace(new PrintWriter(writer));
32
Status status = new Status(IStatus.ERROR, GraphingAPIUIPlugin.PLUGIN_ID, e.toString(), new Throwable(writer.toString()));
33
return ErrorDialog.openError(PlatformUI.getWorkbench()
34
.getActiveWorkbenchWindow().getShell(), message,