/** * Copyright (c) 2013 Obeo. * 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: * Obeo - initial API and implementation */ package org.eclipselabs.emf.loophole.ui.internal; import org.eclipse.core.runtime.IStatus; import org.eclipse.core.runtime.Status; import org.eclipse.emf.codegen.ecore.genmodel.provider.GenModelEditPlugin; import org.eclipse.emf.common.EMFPlugin; import org.eclipse.emf.common.ui.EclipseUIPlugin; import org.eclipse.emf.common.util.ResourceLocator; import org.eclipse.emf.ecore.provider.EcoreEditPlugin; /** * This is the central singleton for the Loophole editor plugin. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public final class LoopholeUIPlugin extends EMFPlugin { /** * Keep track of the singleton. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public static final LoopholeUIPlugin INSTANCE = new LoopholeUIPlugin(); /** * Keep track of the singleton. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private static Implementation plugin; /** * Create the instance. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public LoopholeUIPlugin() { super (new ResourceLocator [] { EcoreEditPlugin.INSTANCE, GenModelEditPlugin.INSTANCE, }); } /** * Returns the singleton instance of the Eclipse plugin. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @return the singleton instance. * @generated */ @Override public ResourceLocator getPluginResourceLocator() { return plugin; } /** * Returns the singleton instance of the Eclipse plugin. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @return the singleton instance. * @generated */ public static Implementation getPlugin() { return plugin; } /** * The actual implementation of the Eclipse <b>Plugin</b>. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public static class Implementation extends EclipseUIPlugin { /** * Creates an instance. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public Implementation() { super(); // Remember the static instance. // plugin = this; // specialized hepler that log execption as errors. helper = new EMFPlugin.InternalHelper(this) { @Override public void log(Object logEntry) { if (logEntry instanceof Throwable) { Throwable throwable = (Throwable)logEntry; String message = throwable.getLocalizedMessage(); if (message == null) { message = ""; } getLog().log(new Status(IStatus.ERROR, getBundle().getSymbolicName(), 0, message, throwable)); } } }; } } }