/******************************************************************************* * Copyright (c) 2006, 2009 University of Edinburgh. * All rights reserved. This program and the accompanying materials * are made available under the terms of the BSD Licence, which * accompanies this feature and can be downloaded from * http://groups.inf.ed.ac.uk/pepa/update/licence.txt *******************************************************************************/ package uk.ac.ed.inf.common.ui; import org.eclipse.core.runtime.IStatus; import org.eclipse.core.runtime.Status; /** * The logger of convenience for the PEPA plug-in. */ public class CommonUILog { /** * Create a status object representing the specified information. * * @param severity, the severity; one of the following: * <code>IStatus.OK</code>, * <code>IStatus.ERROR</code>, * <code>IStatus.INFO</code>, or * <code>IStatus.WARNING</code>. * @param pluginId, the unique identifier of the relevant * plug-in. * @param code, the plug-in-specific status code, or * <code>OK</code>. * @param message, a human-readable message, localized to the * current locale. * @param exception, a low-level exception, or <code>null</code> * if not applicable. * @return, the status object (not <code>null</code>). */ public static IStatus createStatus(int severity, int code, String message, Throwable exception) { return new Status(severity, CommonUIPlugin.PLUGIN_ID, code, message, exception); } /** * Log the specified information. * * @param severity, the severity; one of the following: * <code>IStatus.OK</code>, * <code>IStatus.ERROR</code>, * <code>IStatus.INFO</code>, or * <code>IStatus.WARNING</code>. * @param pluginId. the unique identifier of the relevant * plug-in. * @param code, the plug-in-specific status code, or * <code>OK</code>. * @param message, a human-readable message, localized to the * current locale. * @param exception, a low-level exception, or <code>null</code> * if not applicable. */ public static void log(int severity, int code, String message, Throwable exception) { log(createStatus(severity, code, message, exception)); } /** * Log the given status. * * @param status, the status to log. */ public static void log(IStatus status) { CommonUIPlugin.getDefault().getLog().log(status); } /** * Log the specified error. * * @param message, a human-readable message, localized to the * current locale. * @param exception, a low-level exception, or <code>null</code> * if not applicable. */ public static void logError(String message, Throwable exception) { log(IStatus.ERROR, IStatus.OK, message, exception); } /** * Log the specified error. * * @param exception, a low-level exception. */ public static void logError(Throwable exception) { logError("Unexpected Exception", exception); } /** * Log the specified information. * * @param message, a human-readable message, localized to the * current locale. */ public static void logInfo(String message) { log(IStatus.INFO, IStatus.OK, message, null); } }