/* * � Copyright IBM Corp. 2015 * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at: * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or * implied. See the License for the specific language governing * permissions and limitations under the License. */ package com.ibm.xsp.extlib.designer.bluemix; import java.net.URL; import org.eclipse.jface.resource.ImageDescriptor; import org.eclipse.swt.graphics.Image; import org.eclipse.ui.plugin.AbstractUIPlugin; import org.osgi.framework.BundleContext; /** * The activator class controls the plug-in life cycle */ public class BluemixPlugin extends AbstractUIPlugin { // The plug-in ID public static final String PLUGIN_ID = "com.ibm.xsp.extlib.designer.bluemix"; // $NON-NLS-1$ // The shared instance private static BluemixPlugin _plugin; /** * The constructor */ public BluemixPlugin() { } public void start(BundleContext context) throws Exception { super.start(context); _plugin = this; } public void stop(BundleContext context) throws Exception { _plugin = null; super.stop(context); } /** * Returns the shared instance * * @return the shared instance */ public static BluemixPlugin getDefault() { return _plugin; } public static Image getImage(String location) { Image ret = getDefault().getImageRegistry().get( location ); if (ret == null){ ImageDescriptor imgDesc = getImageDescriptor( location ); if (imgDesc != null) { ret = imgDesc.createImage(); getDefault().getImageRegistry().put( location, ret ); } } return ret; } public static ImageDescriptor getImageDescriptor(String location) { String iconPath = "images/"; // $NON-NLS-1$ URL imageUrl = getDefault().getBundle().getEntry(iconPath + location); if (imageUrl != null) { return ImageDescriptor.createFromURL(imageUrl); } return null; } }