blob: 8cb080d382465baf0549695e91cdc97218865efe [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2003, 2006 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.ui.internal.navigator.resources.plugin;
import org.eclipse.core.resources.IWorkspace;
import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.ui.plugin.AbstractUIPlugin;
/**
* The main plugin class for the workbench Navigator.
*
*
* <p>
* <strong>EXPERIMENTAL</strong>. This class or interface has been added as
* part of a work in progress. There is a guarantee neither that this API will
* work nor that it will remain the same. Please do not use this API without
* consulting with the Platform/UI team.
* </p>
*
* @since 3.2
*/
public class WorkbenchNavigatorPlugin extends AbstractUIPlugin {
// The shared instance.
private static WorkbenchNavigatorPlugin plugin;
/** The plugin id */
public static String PLUGIN_ID = "org.eclipse.ui.navigator.resources"; //$NON-NLS-1$
/**
* Creates a new instance of the receiver
*/
public WorkbenchNavigatorPlugin() {
super();
plugin = this;
}
/**
* @return the shared instance.
*/
public static WorkbenchNavigatorPlugin getDefault() {
return plugin;
}
/**
* @return the workspace instance.
*/
public static IWorkspace getWorkspace() {
return ResourcesPlugin.getWorkspace();
}
/**
* Logs errors.
* @param message The message to log
* @param status The status to log
*/
public static void log(String message, IStatus status) {
if (message != null) {
getDefault().getLog().log(
new Status(IStatus.ERROR, PLUGIN_ID, 0, message, null));
System.err.println(message + "\nReason:"); //$NON-NLS-1$
}
if(status != null) {
getDefault().getLog().log(status);
System.err.println(status.getMessage());
}
}
/**
* Create a status associated with this plugin.
*
* @param severity
* @param aCode
* @param aMessage
* @param exception
* @return A status configured with this plugin's id and the given
* parameters.
*/
public static IStatus createStatus(int severity, int aCode,
String aMessage, Throwable exception) {
return new Status(severity, PLUGIN_ID, aCode,
aMessage != null ? aMessage : "No message.", exception); //$NON-NLS-1$
}
/**
*
* @param aCode
* @param aMessage
* @param exception
* @return A status configured with this plugin's id and the given
* parameters.
*/
public static IStatus createErrorStatus(int aCode, String aMessage,
Throwable exception) {
return createStatus(IStatus.ERROR, aCode, aMessage, exception);
}
/**
*
* @param aMessage
* @param exception
* @return A status configured with this plugin's id and the given
* parameters.
*/
public static IStatus createErrorStatus(String aMessage, Throwable exception) {
return createStatus(IStatus.ERROR, 0, aMessage, exception);
}
/**
*
* @param aMessage
* @return A status configured with this plugin's id and the given
* parameters.
*/
public static IStatus createErrorStatus(String aMessage) {
return createStatus(IStatus.ERROR, 0, aMessage, null);
}
/**
*
* @param aMessage
* @return A status configured with this plugin's id and the given
* parameters.
*/
public static IStatus createInfoStatus(String aMessage) {
return createStatus(IStatus.INFO, 0, aMessage, null);
}
/**
*
* @param aMessage
* @return A status configured with this plugin's id and the given
* parameters.
*/
public static IStatus createWarningStatus(String aMessage) {
return createStatus(IStatus.WARNING, 0, aMessage, null);
}
}