package org.marketcetera.photon.ui; import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.Display; import org.eclipse.ui.console.MessageConsole; import org.eclipse.ui.console.MessageConsoleStream; import org.marketcetera.core.ClassVersion; /** * Specialization of the RCP's {@link MessageConsole} that integrates the * platform's console system and the Log4J-based logging system in the * Marketcetera Core, by providing {@link MessageConsoleStream} objects for * error, warn, info and debug messages. * * * @author gmiller * */ @ClassVersion("$Id: PhotonConsole.java 16154 2012-07-14 16:34:05Z colin $") //$NON-NLS-1$ public class PhotonConsole extends MessageConsole { private MessageConsoleStream errorMessageStream; private MessageConsoleStream warnMessageStream; private MessageConsoleStream infoMessageStream; private MessageConsoleStream debugMessageStream; private final String identifier; /** * Creates a new PhotonConsole and initializes the * {@link MessageConsoleStream} obejcts for error, warn, info, and debug * messages, settin each of them to output text in a different color. */ public PhotonConsole(String humanReadableName, String identifier) { super(humanReadableName, null); this.identifier = identifier; Display display = Display.getDefault(); errorMessageStream = newMessageStream(); errorMessageStream.setColor(display.getSystemColor(SWT.COLOR_RED)); warnMessageStream = newMessageStream(); warnMessageStream.setColor(display .getSystemColor(SWT.COLOR_DARK_YELLOW)); infoMessageStream = newMessageStream(); infoMessageStream.setColor(display.getSystemColor(SWT.COLOR_BLACK)); debugMessageStream = newMessageStream(); debugMessageStream .setColor(display.getSystemColor(SWT.COLOR_DARK_GRAY)); } protected void dispose() { } /** * Returns the {@link MessageConsoleStream} associated with debug messages. * * @return returns the debug message stream. */ public MessageConsoleStream getDebugMessageStream() { return debugMessageStream; } /** * Returns the {@link MessageConsoleStream} associated with error messages. * * @return returns the error message stream. */ public MessageConsoleStream getErrorMessageStream() { return errorMessageStream; } /** * Returns the {@link MessageConsoleStream} associated with info messages. * * @return returns the info message stream. */ public MessageConsoleStream getInfoMessageStream() { return infoMessageStream; } /** * Returns the {@link MessageConsoleStream} associated with warning * messages. * * @return returns the warning message stream. */ public MessageConsoleStream getWarnMessageStream() { return warnMessageStream; } public String getIdentifier() { return identifier; } }