本文整理匯總了Java中org.eclipse.core.runtime.Plugin類的典型用法代碼示例。如果您正苦於以下問題:Java Plugin類的具體用法?Java Plugin怎麽用?Java Plugin使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
Plugin類屬於org.eclipse.core.runtime包,在下文中一共展示了Plugin類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: createLinkedProject
import org.eclipse.core.runtime.Plugin; //導入依賴的package包/類
public IProject createLinkedProject(String projectName, Plugin plugin, IPath linkPath) throws CoreException {
IWorkspace workspace = ResourcesPlugin.getWorkspace();
IProject project = workspace.getRoot().getProject(projectName);
IProjectDescription desc = workspace.newProjectDescription(projectName);
File file = getFileInPlugin(plugin, linkPath);
IPath projectLocation = new Path(file.getAbsolutePath());
if (Platform.getLocation().equals(projectLocation))
projectLocation = null;
desc.setLocation(projectLocation);
project.create(desc, NULL_MONITOR);
if (!project.isOpen())
project.open(NULL_MONITOR);
return project;
}
示例2: disposePreferenceStoreListener
import org.eclipse.core.runtime.Plugin; //導入依賴的package包/類
/**
* Dispose the receiver.
*/
private void disposePreferenceStoreListener() {
IEclipsePreferences root = (IEclipsePreferences) Platform
.getPreferencesService().getRootNode().node(
Plugin.PLUGIN_PREFERENCE_SCOPE);
try {
if (!(root.nodeExists(nodeQualifier))) {
return;
}
} catch (BackingStoreException e) {
return;// No need to report here as the node won't have the
// listener
}
IEclipsePreferences preferences = getStorePreferences();
if (preferences == null) {
return;
}
if (preferencesListener != null) {
preferences.removePreferenceChangeListener(preferencesListener);
preferencesListener = null;
}
}
示例3: resolve
import org.eclipse.core.runtime.Plugin; //導入依賴的package包/類
public URI resolve(Object context, URI classpathUri) {
if (context instanceof Plugin) {
context = ((Plugin) context).getBundle();
}
if (!(context instanceof Bundle)) {
throw new IllegalArgumentException("Context must implement Bundle");
}
Bundle bundle = (Bundle) context;
try {
if (ClasspathUriUtil.isClasspathUri(classpathUri)) {
URI result = findResourceInBundle(bundle, classpathUri);
if (classpathUri.fragment() != null)
result = result.appendFragment(classpathUri.fragment());
return result;
}
} catch (Exception exc) {
throw new ClasspathUriResolutionException(exc);
}
return classpathUri;
}
示例4: disposePreferenceStoreListener
import org.eclipse.core.runtime.Plugin; //導入依賴的package包/類
/**
* Dispose the preference store listener.
*/
private void disposePreferenceStoreListener() {
IEclipsePreferences root = (IEclipsePreferences) Platform
.getPreferencesService().getRootNode().node(
Plugin.PLUGIN_PREFERENCE_SCOPE);
try {
if (!(root.nodeExists(nodeQualifier))) {
return;
}
} catch (BackingStoreException e) {
return;// No need to report here as the node won't have the
// listener
}
IEclipsePreferences preferences = getStorePreferences();
if (preferences == null) {
return;
}
if (preferencesListener != null) {
preferences.removePreferenceChangeListener(preferencesListener);
preferencesListener = null;
}
}
示例5: extractJar
import org.eclipse.core.runtime.Plugin; //導入依賴的package包/類
protected static void extractJar(
Plugin plugin, String pathInPluginJar, String pathInStateLocation)
throws IOException {
IPath pluginStateLocation = plugin.getStateLocation();
File fileInStateLocation = pluginStateLocation.append(
pathInStateLocation).toFile();
fileInStateLocation.delete();
FileOutputStream os = null;
InputStream is = FileLocator.openStream(
plugin.getBundle(), new Path(pathInPluginJar), false);
try {
os = new FileOutputStream(fileInStateLocation);
byte[] buf = new byte[2048];
int bytesRead = 0;
while ((bytesRead = is.read(buf)) != -1) {
os.write(buf, 0, bytesRead);
}
} finally {
closeStreams(is, os);
}
}
示例6: flushCache
import org.eclipse.core.runtime.Plugin; //導入依賴的package包/類
/**
* Flushes any cached logging messages
*/
public static void flushCache()
{
caching = false;
for (Map.Entry<Plugin, List<IStatus>> entry : earlyMessageCache.entrySet())
{
for (IStatus status : entry.getValue())
{
StatusLevel severity = getStatusLevel(status.getSeverity());
if (status.getSeverity() == IStatus.ERROR || isOutputEnabled(entry.getKey(), severity, null))
{
log(entry.getKey(), status.getSeverity(), status.getMessage(), null, status.getException());
}
}
}
earlyMessageCache.clear();
}
示例7: isOutputEnabled
import org.eclipse.core.runtime.Plugin; //導入依賴的package包/類
/**
* Are we currently outputting items of this severity and this scope? Use this method if you want to check before
* actually composing an error message.
*
* @return
*/
public static boolean isOutputEnabled(Plugin plugin, StatusLevel severity, String scope)
{
if (!isSeverityEnabled(severity))
{
return false;
}
try
{
if (!Platform.inDebugMode())
{
return true;
}
}
catch (Exception e)
{
// ignore. May happen if we're running unit tests outside IDE
}
return isScopeEnabled(scope);
}
示例8: buildMessage
import org.eclipse.core.runtime.Plugin; //導入依賴的package包/類
/**
* Constructs the message to log
*
* @param plugin
* @param severity
* @param message
* @param scope
* @param th
* @return
*/
public static String buildMessage(Plugin plugin, int severity, String message, String scope, Throwable th)
{
if (scope == null)
{
scope = StringUtil.EMPTY;
}
String version;
if (EclipseUtil.isStandalone())
{
version = EclipseUtil.getProductVersion();
}
else
{
version = EclipseUtil.getStudioVersion();
}
return MessageFormat.format("(Build {0}) {1} {2} {3}", //$NON-NLS-1$
version, getLabel(severity), scope, message);
}
示例9: findTestData
import org.eclipse.core.runtime.Plugin; //導入依賴的package包/類
/**
* Finds a URL for test data checked into a local data-test directory.
* Should work if Run As a JUnit Test or JUnit Plugin Test,
* as well as Bamboo. (For Bamboo, remember to check the box for the data-test folder
* in the plugin's build.xml editor)
* @param yourPlugin -- use something like Activator.getDefault()
* @param filePath -- e.g. "data-test/foo.xml" (use slash URL separator, not platform-specific File.separator).
* @return URL (hint: call openStream)
* @throws FileNotFoundException
* @see SharedTestData for large data files you don't want checked out and delivered with the product
*/
public static URL findTestData(Plugin yourPlugin, String filePath) throws FileNotFoundException {
URL url;
try {
if (yourPlugin==null) {
url = new File(filePath).toURI().toURL();
} else {
url = FileLocator.find(yourPlugin.getBundle(),
new Path(filePath),
null);
}
} catch (IOException e) {
throw(new FileNotFoundException(filePath + " (" + e.toString() + ")"));
}
if (url==null) {
throw new FileNotFoundException("Can't find URL " + filePath);
}
return url;
}
示例10: listURLContents
import org.eclipse.core.runtime.Plugin; //導入依賴的package包/類
/**
* @param yourPlugin -- use something like Activator.getDefault()
* @param directoryPath -- e.g. "data-test/" (use slash URL separator, not platform-specific File.separator).
* @return Listing of directory as a List of URLs.
* @throws FileNotFoundException
* @see SharedTestData for large data files you don't want checked out and delivered with the product
*/
public static List<URL> listURLContents(Plugin yourPlugin, String directoryPath) throws FileNotFoundException {
List<URL> toRet = new ArrayList<URL>();
if (yourPlugin == null) {
File dirFile = new File(directoryPath);
for (File child : dirFile.listFiles()) {
try {
toRet.add(child.toURI().toURL());
} catch (MalformedURLException e) {
throw(new FileNotFoundException(directoryPath + " (" + e.toString() + ")"));
}
}
} else {
Bundle bundle = yourPlugin.getBundle();
Enumeration entryPaths = bundle.getEntryPaths(directoryPath);
while (entryPaths.hasMoreElements()) {
String entryPath = (String) entryPaths.nextElement();
toRet.add(bundle.getEntry(entryPath));
}
}
return toRet;
}
示例11: getPlugin
import org.eclipse.core.runtime.Plugin; //導入依賴的package包/類
/**
* Gets the plugin based on the project
* @param project Project to look for the language plugin for
* @return Language plugin for the current project
*/
public Plugin getPlugin(IScriptProject project) {
String ssVersion=CorePreferencesSupport.getInstance().getProjectSpecificPreferencesValue(SilverStripePreferences.SILVERSTRIPE_VERSION, SilverStripeVersion.getDefaultVersion(), project.getProject());
IConfigurationElement languageProvider=SilverStripeVersion.getLanguageDefinition(ssVersion);
if(languageProvider!=null) {
Object o;
try {
o = languageProvider.createExecutableExtension("activator");
if(o instanceof AbstractUIPlugin) {
return (AbstractUIPlugin) o;
}
} catch (CoreException e) {
e.printStackTrace();
}
}
return SilverStripePDTPlugin.getDefault();
}
示例12: createLinkedFile
import org.eclipse.core.runtime.Plugin; //導入依賴的package包/類
public IFile createLinkedFile(IContainer container, IPath linkPath, Plugin plugin, IPath linkedFileTargetPath)
throws CoreException {
File file = getFileInPlugin(plugin, linkedFileTargetPath);
IFile iFile = container.getFile(linkPath);
iFile.createLink(new Path(file.getAbsolutePath()), IResource.ALLOW_MISSING_LOCAL, NULL_MONITOR);
return iFile;
}
示例13: createLinkedFolder
import org.eclipse.core.runtime.Plugin; //導入依賴的package包/類
public IFolder createLinkedFolder(IContainer container, IPath linkPath, Plugin plugin, IPath linkedFolderTargetPath)
throws CoreException {
File file = getFileInPlugin(plugin, linkedFolderTargetPath);
IFolder iFolder = container.getFolder(linkPath);
iFolder.createLink(new Path(file.getAbsolutePath()), IResource.ALLOW_MISSING_LOCAL, NULL_MONITOR);
return iFolder;
}
示例14: getFileInPlugin
import org.eclipse.core.runtime.Plugin; //導入依賴的package包/類
public File getFileInPlugin(Plugin plugin, IPath path) throws CoreException {
try {
URL installURL = plugin.getBundle().getEntry(path.toString());
URL localURL = FileLocator.toFileURL(installURL);
return new File(localURL.getFile());
} catch (IOException e) {
throw new PathException(IStatus.ERROR, path, "cannot get file in plugin", e);
}
}
示例15: writeToPrefs
import org.eclipse.core.runtime.Plugin; //導入依賴的package包/類
public static void writeToPrefs( String prefName, byte[] prefData){
try {
Plugin pl = (Plugin) CoreContext.getContext().getObject("p");
Preferences prefs = pl.getPluginPreferences();
String str64 = new String(Base64.encodeBase64(prefData), "UTF8");
prefs.setValue(prefName, str64);
pl.savePluginPreferences();
} catch (UnsupportedEncodingException e) {
ExceptionHandler.handle(e);
} catch (Exception ignore) {
ExceptionHandler.handle(ignore);
}
}