Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/ContentBasedPreferenceGateway.java')
-rw-r--r--bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/ContentBasedPreferenceGateway.java165
1 files changed, 0 insertions, 165 deletions
diff --git a/bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/ContentBasedPreferenceGateway.java b/bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/ContentBasedPreferenceGateway.java
deleted file mode 100644
index cd28db3745..0000000000
--- a/bundles/org.eclipse.wst.sse.core/src-encoding/org/eclipse/wst/sse/core/internal/encoding/ContentBasedPreferenceGateway.java
+++ /dev/null
@@ -1,165 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2001, 2006 IBM Corporation and others.
- * 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:
- * IBM Corporation - initial API and implementation
- * Jens Lukowski/Innoopract - initial renaming/restructuring
- *
- *******************************************************************************/
-package org.eclipse.wst.sse.core.internal.encoding;
-
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Plugin;
-import org.eclipse.core.runtime.content.IContentType;
-import org.eclipse.core.runtime.preferences.DefaultScope;
-import org.eclipse.core.runtime.preferences.IEclipsePreferences;
-import org.osgi.framework.Bundle;
-import org.osgi.service.prefs.Preferences;
-
-
-public class ContentBasedPreferenceGateway {
- private static String DEFAULT_LOCATION = "org.eclipse.wst.sse.core"; //$NON-NLS-1$
- private static String RUNTIME_XML_ID = "org.eclipse.core.runtime.xml"; //$NON-NLS-1$
- private static String SSE_XML_ID = "org.eclipse.wst.xml.core.xmlsource"; //$NON-NLS-1$
-
- /**
- * @param pluginId
- * @return
- */
- private static boolean bundleExists(String pluginId) {
-
- // this just verifies there's really a plugin with this ID in "stack"
- Bundle bundle = Platform.getBundle(pluginId);
- return (!(bundle == null));
- }
-
- /**
- * @param contentType
- * @return
- */
- private static String getContributorPluginId(IContentType contentType) {
- // TODO: need to have registration info here, but for now, we'll use
- // simple heuristic to cover the cases we know about.
- String fullId = null;
- if (contentType == null) {
- fullId = DEFAULT_LOCATION;
- } else {
- fullId = contentType.getId();
- }
- // only one known case, so far, of hard coded re-direction
- // (not sure this is even needed, but just in case).
- // We don't want to store/change runtime.xml preferences
- if (RUNTIME_XML_ID.equals(fullId)) {
- fullId = SSE_XML_ID;
- }
- String pluginId = inferPluginId(fullId);
- return pluginId;
- }
-
- private static Preferences getDefaultPreferences(IContentType contentType) {
- IEclipsePreferences eclipsePreferences = Platform.getPreferencesService().getRootNode();
- // TODO: eventaully need extension mechanism to avoid these hard coded
- // mechanism.
- // The idea is to load/store based on plugin's preferences, where the
- // content type was contributed
- // Eventually, too, we could do more "dynamic lookup" to get parent
- // types for defaults, etc.
-
- // Get default plugin preferences
- String pluginPreferenceLocation = DefaultScope.SCOPE + IPath.SEPARATOR + getContributorPluginId(contentType);
- Preferences pluginPreferences = eclipsePreferences.node(pluginPreferenceLocation);
-
- // the below code does not work at this time because content type
- // preferences are stored in the place as plugin preferences
-
- // Preferences contentPreferences = null;
- // if (contentType != null) {
- // contentPreferences = pluginPreferences.node(contentType.getId());
- // }
- // else {
- // contentPreferences = pluginPreferences.node(DEFAULT_LOCATION );
- // }
- //
- // return contentPreferences;
-
- return pluginPreferences;
-
- }
-
- private static Preferences getDefaultPreferences(String contentTypeId) {
- IContentType contentType = Platform.getContentTypeManager().getContentType(contentTypeId);
- return getDefaultPreferences(contentType);
- }
-
- public static Preferences getPreferences(IContentType contentType) {
- IEclipsePreferences eclipsePreferences = Platform.getPreferencesService().getRootNode();
- // TODO: eventaully need extension mechanism to avoid these hard coded
- // mechanism.
- // The idea is to load/store based on plugin's preferences, where the
- // content type was contributed
- // Eventually, too, we could do more "dynamic lookup" to get parent
- // types for defaults, etc.
-
- // Get instance plugin preferences
- String pluginPreferenceLocation = Plugin.PLUGIN_PREFERENCE_SCOPE + IPath.SEPARATOR + getContributorPluginId(contentType);
- Preferences pluginPreferences = eclipsePreferences.node(pluginPreferenceLocation);
-
- // the below code does not work at this time because content type
- // preferences are stored in the place as plugin preferences
-
- // Preferences contentPreferences = null;
- // if (contentType != null) {
- // contentPreferences = pluginPreferences.node(contentType.getId());
- // }
- // else {
- // contentPreferences = pluginPreferences.node(DEFAULT_LOCATION );
- // }
- //
- // return contentPreferences;
- return pluginPreferences;
-
- }
-
- public static Preferences getPreferences(String contentTypeId) {
- IContentType contentType = Platform.getContentTypeManager().getContentType(contentTypeId);
- return getPreferences(contentType);
- }
-
- public static String getPreferencesString(IContentType contentType, String key) {
- Preferences preferences = getPreferences(contentType);
- String value = preferences.get(key, getDefaultPreferences(contentType).get(key, null));
- return value;
- }
-
- public static String getPreferencesString(String contentTypeId, String key) {
- Preferences preferences = getPreferences(contentTypeId);
- String value = preferences.get(key, getDefaultPreferences(contentTypeId).get(key, null));
- return value;
- }
-
- /**
- * @param fullId
- * @return
- */
- private static String inferPluginId(String fullId) {
- // simply trim off last "segment" from full ID.
- int lastSegmentPos = fullId.lastIndexOf('.');
- String pluginId = null;
- if (lastSegmentPos != -1) {
- pluginId = fullId.substring(0, lastSegmentPos);
- } else {
- // weird case? We'll at least put/get them somewhere
- pluginId = DEFAULT_LOCATION;
- }
- if (!bundleExists(pluginId)) {
- // use default location
- pluginId = DEFAULT_LOCATION;
- }
- return pluginId;
- }
-}

Back to the top