package at.bestsolution.efxclipse.tooling.pde.ui; import java.net.URL; import org.eclipse.ui.plugin.AbstractUIPlugin; import org.osgi.framework.BundleContext; import org.osgi.framework.ServiceReference; public class Activator extends AbstractUIPlugin { public static final String PLUGIN_ID = "at.bestsolution.efxclipse.tooling.pde.ui"; // Shared instance private static Activator fInstance; public URL getInstallURL() { return getDefault().getBundle().getEntry("/"); //$NON-NLS-1$ } public static Activator getDefault() { return fInstance; } public static String getPluginId() { return getDefault().getBundle().getSymbolicName(); } /* (non-Javadoc) * @see org.eclipse.core.runtime.Plugin#start(org.osgi.framework.BundleContext) */ public void start(BundleContext context) throws Exception { super.start(context); fInstance = this; } public void stop(BundleContext context) throws Exception { fInstance = null; super.stop(context); } public <S> S acquireService(Class<S> serviceClass) { ServiceReference<S> reference = getBundle().getBundleContext().getServiceReference(serviceClass); if (reference == null) return null; S service = getBundle().getBundleContext().getService(reference); if (service != null) { getBundle().getBundleContext().ungetService(reference); } return service; } public static String[] getJavaFXImports() { return new String[] { "javafx.animation;version=\"2.0.0\"", "javafx.application;version=\"2.0.0\"", "javafx.beans;version=\"2.0.0\"", "javafx.beans.binding;version=\"2.0.0\"", "javafx.beans.property;version=\"2.0.0\"", "javafx.beans.value;version=\"2.0.0\"", "javafx.collections;version=\"2.0.0\"", "javafx.concurrent;version=\"2.0.0\"", "javafx.embed.swing;version=\"2.0.0\"", "javafx.event;version=\"2.0.0\"", "javafx.fxml;version=\"2.0.0\"", "javafx.geometry;version=\"2.0.0\"", "javafx.scene;version=\"2.0.0\"", "javafx.scene.chart;version=\"2.0.0\"", "javafx.scene.control;version=\"2.0.0\"", "javafx.scene.control.cell;version=\"2.0.0\"", "javafx.scene.effect;version=\"2.0.0\"", "javafx.scene.image;version=\"2.0.0\"", "javafx.scene.input;version=\"2.0.0\"", "javafx.scene.layout;version=\"2.0.0\"", "javafx.scene.media;version=\"2.0.0\"", "javafx.scene.paint;version=\"2.0.0\"", "javafx.scene.shape;version=\"2.0.0\"", "javafx.scene.text;version=\"2.0.0\"", "javafx.scene.transform;version=\"2.0.0\"", "javafx.scene.web;version=\"2.0.0\"", "javafx.stage;version=\"2.0.0\"", "javafx.util;version=\"2.0.0\"" }; } public static String getCommaValuesFromPackagesArray(String[] values, String version) { StringBuffer buffer = new StringBuffer(); for (String value : values) { if (buffer.length() > 0) { buffer.append(",\n "); //$NON-NLS-1$ // space required for multiline headers } buffer.append(value); if (value.indexOf(";version=") == -1 && (version != null) && (values.length == 1)) { //$NON-NLS-1$ buffer.append(";version=\"").append(version).append("\""); //$NON-NLS-1$ //$NON-NLS-2$ } } return buffer.toString(); } }