Bug 572013 - Remove Mark 2.0 plug-in compatibility classes

Also adds API filters, as planned removals should not increase the
version as of decision by the PMC on request of the community.

Change-Id: Ie0cfed5629769c421e630d4c405edaa345ef2c7f
Signed-off-by: Lars Vogel <Lars.Vogel@vogella.com>
diff --git a/bundles/org.eclipse.core.runtime/.settings/.api_filters b/bundles/org.eclipse.core.runtime/.settings/.api_filters
index c558370..ab3927f 100644
--- a/bundles/org.eclipse.core.runtime/.settings/.api_filters
+++ b/bundles/org.eclipse.core.runtime/.settings/.api_filters
@@ -8,6 +8,14 @@
             </message_arguments>
         </filter>
     </resource>
+    <resource path="META-INF/MANIFEST.MF" type="org.eclipse.core.runtime.ILibrary">
+        <filter comment="Planned deletion" id="305324134">
+            <message_arguments>
+                <message_argument value="org.eclipse.core.runtime.ILibrary"/>
+                <message_argument value="org.eclipse.core.runtime_3.21.0"/>
+            </message_arguments>
+        </filter>
+    </resource>
     <resource path="META-INF/MANIFEST.MF" type="org.eclipse.core.runtime.IPlatformRunnable">
         <filter comment="Planned-Deletion" id="305324134">
             <message_arguments>
@@ -16,4 +24,28 @@
             </message_arguments>
         </filter>
     </resource>
+    <resource path="META-INF/MANIFEST.MF" type="org.eclipse.core.runtime.IPluginPrerequisite">
+        <filter comment="Planned deletion" id="305324134">
+            <message_arguments>
+                <message_argument value="org.eclipse.core.runtime.IPluginPrerequisite"/>
+                <message_argument value="org.eclipse.core.runtime_3.21.0"/>
+            </message_arguments>
+        </filter>
+    </resource>
+    <resource path="META-INF/MANIFEST.MF" type="org.eclipse.core.runtime.IPluginRegistry">
+        <filter comment="Planned deletion" id="305324134">
+            <message_arguments>
+                <message_argument value="org.eclipse.core.runtime.IPluginRegistry"/>
+                <message_argument value="org.eclipse.core.runtime_3.21.0"/>
+            </message_arguments>
+        </filter>
+    </resource>
+    <resource path="src/org/eclipse/core/runtime/Platform.java" type="org.eclipse.core.runtime.Platform">
+        <filter comment="Planned deletion" id="338792546">
+            <message_arguments>
+                <message_argument value="org.eclipse.core.runtime.Platform"/>
+                <message_argument value="getPluginRegistry()"/>
+            </message_arguments>
+        </filter>
+    </resource>
 </component>
diff --git a/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/ILibrary.java b/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/ILibrary.java
deleted file mode 100644
index 504fc62..0000000
--- a/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/ILibrary.java
+++ /dev/null
@@ -1,169 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2014 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.core.runtime;
-
-import org.eclipse.osgi.util.ManifestElement;
-import org.osgi.framework.Constants;
-
-/**
- * A runtime library declared in a plug-in. Libraries contribute elements to the
- * search path. These contributions are specified as a path to a directory or
- * Jar file. This path is always considered to be relative to the containing
- * plug-in.
- * <p>
- * Libraries are typed. The type is used to determine to which search path the
- * library's contribution should be added. The valid types are:
- * <code>CODE</code> and <code>RESOURCE</code>.
- * </p>
- *
- * @deprecated In Eclipse 3.0 the plug-in classpath representation was changed.
- *             Clients of <code>ILibrary</code> are directed to the headers
- *             associated with the relevant bundle. In particular, the
- *             <code>Bundle-Classpath</code> header contains all available
- *             information about the classpath of a plug-in. Having retrieved
- *             the header, the {@link ManifestElement} helper class can be used
- *             to parse the value and discover the individual class path
- *             entries. The various header attributes are defined in
- *             {@link Constants}.
- *             <p>
- *             For example,
- *             </p>
- *
- *             <pre>
- *     String header = bundle.getHeaders().get(Constants.BUNDLE_CLASSPATH);
- *     ManifestElement[] elements = ManifestElement.parseHeader(
- *         Constants.BUNDLE_CLASSPATH, header);
- *     if (elements == null)
- *         return;
- *     elements[0].getValue();   // the jar/dir containing the code
- *     ...
- *             </pre>
- *             <p>
- *             Note that this new structure does not include information on
- *             which packages are exported or present in the listed classpath
- *             entries. This information is no longer relevant.
- *             </p>
- *             <p>
- *             This interface must only be used by plug-ins which explicitly
- *             require the org.eclipse.core.runtime.compatibility plug-in.
- *             </p>
- * @noextend This interface is not intended to be extended by clients.
- * @noreference This interface is not intended to be referenced by clients.
- * @noimplement This interface is not intended to be implemented by clients.
- *
- *              This interface is planned to be deleted, see
- *              https://bugs.eclipse.org/bugs/show_bug.cgi?id=544339
- *
- */
-@Deprecated
-public interface ILibrary {
-	/**
-	 * Constant string (value "code") indicating the code library type.
-	 * @deprecated As of Eclipse 3.0 library types are obsolete.
-	 * There is no replacement.
-	 */
-	@Deprecated
-	public static final String CODE = "code"; //$NON-NLS-1$
-
-	/**
-	 * Constant string (value "resource") indicating the resource library type.
-	 * @deprecated As of Eclipse 3.0 library types are obsolete.
-	 * There is no replacement.
-	 */
-	@Deprecated
-	public static final String RESOURCE = "resource"; //$NON-NLS-1$
-
-	/**
-	 * Returns the content filters, or <code>null</code>.
-	 * Each content filter identifies a specific class, or
-	 * a group of classes, using a notation and matching rules
-	 * equivalent to Java <code>import</code> declarations
-	 * (e.g., "java.io.File", or "java.io.*"). Returns <code>null</code>
-	 * if the library is not exported, or it is fully exported
-	 * (no filtering).
-	 *
-	 * @return the content filters, or <code>null</code> if none
-	 * @deprecated As of Eclipse 3.0 content filters are obsolete.
-	 * There is no replacement.
-	 */
-	@Deprecated
-	public String[] getContentFilters();
-
-	/**
-	 * Returns the path of this runtime library, relative to the
-	 * installation location.
-	 *
-	 * @return the path of the library
-	 * @deprecated
-	 * Given a manifest element corresponding to a classpath entry, the path
-	 * for the entry can be accessed by getting the value of the manifest element.
-	 * For example,
-	 * <pre>
-	 *     element.getValue();   // the jar/dir containing the code
-	 * </pre>
-	 */
-	@Deprecated
-	public IPath getPath();
-
-	/**
-	 * Returns this library's type.
-	 *
-	 * @return the type of this library.   The valid types are: <code>CODE</code> and <code>RESOURCE</code>.
-	 * @see #CODE
-	 * @see #RESOURCE
-	 * @deprecated As of Eclipse 3.0 library types are obsolete.
-	 * There is no replacement.
-	 */
-	@Deprecated
-	public String getType();
-
-	/**
-	 * Returns whether the library is exported. The contents of an exported
-	 * library may be visible to other plug-ins that declare a dependency
-	 * on the plug-in containing this library, subject to content filtering.
-	 * Libraries that are not exported are entirely private to the declaring
-	 * plug-in.
-	 *
-	 * @return <code>true</code> if the library is exported, <code>false</code>
-	 *    if it is private
-	 * @deprecated As of Eclipse 3.0 exporting an individual library is obsolete.
-	 * There is no replacement.
-	 */
-	@Deprecated
-	public boolean isExported();
-
-	/**
-	 * Returns whether this library is fully exported. A library is considered
-	 * fully exported iff it is exported and has no content filters.
-	 *
-	 * @return <code>true</code> if the library is fully exported, and
-	 *    <code>false</code> if it is private or has filtered content
-	 * @deprecated As of Eclipse 3.0 exporting an individual library is obsolete.
-	 * There is no replacement.
-	 */
-	@Deprecated
-	public boolean isFullyExported();
-
-	/**
-	 * Returns the array of package prefixes that this library declares. This
-	 * is used in classloader enhancements and is an optional entry in the plugin.xml.
-	 *
-	 * @return the array of package prefixes or <code>null</code>
-	 * @since 2.1
-	 * @deprecated As of Eclipse 3.0 package prefix filtering is obsolete.
-	 * There is no replacement.
-	 */
-	@Deprecated
-	public String[] getPackagePrefixes();
-}
diff --git a/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/IPluginPrerequisite.java b/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/IPluginPrerequisite.java
deleted file mode 100644
index f552092..0000000
--- a/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/IPluginPrerequisite.java
+++ /dev/null
@@ -1,287 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2008 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.core.runtime;
-
-import org.eclipse.osgi.service.resolver.State;
-import org.eclipse.osgi.util.ManifestElement;
-import org.osgi.framework.Constants;
-
-/**
- * A prerequisite entry declared by a plug-in. The declaration causes
- * classes defined by the prerequisite plug-in to be visible
- * to the plug-in that declared the dependency.
- *
- * @deprecated
- * In Eclipse 3.0 the plug-in prerequisite representation was changed.  Clients of
- * <code>IPluginPrerequisite</code> are directed to the headers associated with the relevant bundle.
- * In particular, the <code>Require-Bundle</code> header contains all available information
- * about the prerequisites of a plug-in.  Having retrieved the header, the {@link ManifestElement}
- * helper class can be used to parse the value and discover the individual
- * prerequisite plug-ins.  The various header attributes are defined in {@link Constants}.
- * <p>For example,</p>
- * <pre>    String header = bundle.getHeaders().get(Constants.REQUIRE_BUNDLE);
- *     ManifestElement[] elements = ManifestElement.parseHeader(
- *         Constants.REQUIRE_BUNDLE, header);
- *     if (elements == null)
- *         return;
- *     elements[0].getValue();   // the prerequisite plug-in id
- *     elements[0].getAttribute(Constants.BUNDLE_VERSION_ATTRIBUTE);   // the prerequisite plug-in version
- *     ...
- * </pre>
- * <p>
- * This interface must only be used by plug-ins
- * which explicitly require the org.eclipse.core.runtime.compatibility plug-in.
- * </p>
- *
- * @noextend This interface is not intended to be extended by clients.
- * @noreference This interface is not intended to be referenced by clients.
- * @noimplement This interface is not intended to be implemented by clients.
- *
- *              This interface is planned to be deleted, see
- *              https://bugs.eclipse.org/bugs/show_bug.cgi?id=544339
- *
- */
-@Deprecated
-public interface IPluginPrerequisite {
-	/**
-	 * Returns the actual version identifier that is used
-	 * at runtime to resolve this prerequisite dependency,
-	 * or null, if the dependency is not resolved.
-	 *
-	 * @return the plug-in version identifier, or null
-	 * @deprecated Callers of this method should interrogate the current {@link State}
-	 * of the platform.  For example,
-	 * <pre>
-	 *     State state = Platform.getPlatformAdmin().getState();
-	 *     BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
-	 *     BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
-	 *     BundleDescription prereq = spec.getSupplier();
-	 * </pre>
-	 */
-	@Deprecated
-	public PluginVersionIdentifier getResolvedVersionIdentifier();
-
-	/**
-	 * Returns the plug-in identifier of the prerequisite plug-in.
-	 *
-	 * @return the plug-in identifier
-	 * @deprecated Given a manifest element equivalent of a plug-in
-	 * prerequisite (see the class comment), this method is replaced by:
-	 * <pre>
-	 *     element.getValue();
-	 * </pre>
-	 */
-	@Deprecated
-	public String getUniqueIdentifier();
-
-	/**
-	 * Returns the version identifier of the prerequisite plug-in,
-	 * or <code>null</code> if none.
-	 *
-	 * @return the plug-in version identifier, or <code>null</code> if
-	 *    none was specified
-	 * @deprecated Callers of this method should interrogate the current {@link State}
-	 * of the platform.  For example,
-	 * <pre>
-	 *     State state = Platform.getPlatformAdmin().getState();
-	 *     BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
-	 *     BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
-	 *     Version reqMinVersion = spec.getVersionRange().getMinimum();
-	 * </pre>
-	 */
-	@Deprecated
-	public PluginVersionIdentifier getVersionIdentifier();
-
-	/**
-	 * Indicates whether this prerequisite plug-in is further exposed to any
-	 * plug-ins that declare a dependency on this plug-in. This allows
-	 * for chaining of dependencies. For example, if plug-in A depends
-	 * on plug-in B which depends on plug-in C, the classes from C
-	 * are typically visible to B, but not to A.  A can get around this
-	 * if either B explicitly exports its dependency on C, or
-	 * A explicitly declares C as a prerequisite in addition to B.
-	 *
-	 * @return <code>true</code> if this prerequisite plug-in is exposed,
-	 *    <code>false</code> otherwise
-	 * @deprecated Given a manifest element equivalent of a plug-in
-	 * prerequisite (see the class comment), this method is replaced by:
-	 * <pre>
-	 *     element.getAttribute(Constants.REPROVIDE_ATTRIBUTE);
-	 * </pre>
-	 */
-	@Deprecated
-	public boolean isExported();
-
-	/**
-	 * Indicates that this plug-in prerequisite can be resolved
-	 * against a configured plug-in with an identifier that is
-	 * greater than or equal to it.
-	 *
-	 * @return <code>true</code> if greater or equal match is allowed,
-	 *   <code>false</code> otherwise.
-	 * @since 2.0
-	 * @deprecated Callers of this method should interrogate the current {@link State}
-	 * of the platform.  For example,
-	 * <pre>
-	 *     State state = Platform.getPlatformAdmin().getState();
-	 *     BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
-	 *     BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
-	 *     VersionRange versionRange = spec.getVersionRange();
-	 *     if (versionRange == null || versionRange.getMinimum() == null)
-	 *         return false;
-	 *     Version minimum = versionRange.getMinimum();
-	 *     Version maximum = versionRange.getMaximum() == null ? Version.maxVersion : versionRange.getMaximum();
-	 *     if (maximum.equals(Version.maxVersion))
-	 *         return true;
-	 *     return false;
-	 * </pre>
-	 */
-	@Deprecated
-	public boolean isMatchedAsGreaterOrEqual();
-
-	/**
-	 * Indicates that this plug-in prerequisite can be resolved
-	 * against a configured plug-in with a compatible identifier.
-	 *
-	 * @return <code>true</code> if compatible match is allowed,
-	 *   <code>false</code> if exact match is required.
-	 * @deprecated Callers of this method should interrogate the current {@link State}
-	 * of the platform.  For example,
-	 * <pre>
-	 *     State state = Platform.getPlatformAdmin().getState();
-	 *     BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
-	 *     BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
-	 *     VersionRange versionRange = spec.getVersionRange();
-	 *     if (versionRange == null || versionRange.getMinimum() == null)
-	 *         return false;
-	 *     Version minimum = versionRange.getMinimum();
-	 *     Version maximum = versionRange.getMaximum() == null ? Version.maxVersion : versionRange.getMaximum();
-	 *     if (!minimum.isInclusive() || maximum.isInclusive())
-	 *         return false;
-	 *     else if (minimum.getMajorComponent() == maximum.getMajorComponent() - 1)
-	 *         return true;
-	 *     return false;
-	 * </pre>
-	 */
-	@Deprecated
-	public boolean isMatchedAsCompatible();
-
-	/**
-	 * Indicates that this plug-in prerequisite can only be resolved
-	 * against a configured plug-in with an equivalent plug-in
-	 * identifier.
-	 *
-	 * @return <code>true</code> if only equivalent identifier match
-	 * satisfies this dependency, <code>false</code> otherwise.
-	 * @since 2.0
-	 * @deprecated Callers of this method should interrogate the current {@link State}
-	 * of the platform.  For example,
-	 * <pre>
-	 *     State state = Platform.getPlatformAdmin().getState();
-	 *     BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
-	 *     BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
-	 *     VersionRange versionRange = spec.getVersionRange();
-	 *     if (versionRange == null || versionRange.getMinimum() == null)
-	 *         return false;
-	 *     Version minimum = versionRange.getMinimum();
-	 *     Version maximum = versionRange.getMaximum() == null ? Version.maxVersion : versionRange.getMaximum();
-	 *     if (!minimum.isInclusive() || maximum.isInclusive())
-	 *         return false;
-	 *     else if (minimum.getMajorComponent() == maximum.getMajorComponent() - 1)
-	 *         return false;
-	 *     else if (minimum.getMajorComponent() != maximum.getMajorComponent())
-	 *         return false;
-	 *     else if (minimum.getMinorComponent() == maximum.getMinorComponent() - 1)
-	 *         return true;
-	 *     return false;
-	 * </pre>
-	 */
-	@Deprecated
-	public boolean isMatchedAsEquivalent();
-
-	/**
-	 * Indicates that this plug-in prerequisite can only be resolved
-	 * against a configured plug-in with a plug-in identifier that
-	 * is perfectly equal.
-	 *
-	 * @return <code>true</code> if only perfectly equal
-	 * identifier match satisfies this dependency,
-	 * <code>false</code> otherwise.
-	 * @since 2.0
-	 * @deprecated Callers of this method should interrogate the current {@link State}
-	 * of the platform.  For example,
-	 * <pre>
-	 *     State state = Platform.getPlatformAdmin().getState();
-	 *     BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
-	 *     BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
-	 *     VersionRange versionRange = spec.getVersionRange();
-	 *     if (versionRange == null || versionRange.getMinimum() == null)
-	 *         return false;
-	 *     Version minimum = versionRange.getMinimum();
-	 *     Version maximum = versionRange.getMaximum() == null ? Version.maxVersion : versionRange.getMaximum();
-	 *     if (minimum.equals(maximum))
-	 *         return true;
-	 *     return false;
-	 * </pre>
-	 */
-	@Deprecated
-	public boolean isMatchedAsPerfect();
-
-	/**
-	 * Indicates that this plug-in prerequisite can only be resolved
-	 * against a configured plug-in with exactly the same plug-in
-	 * identifier.
-	 *
-	 * @return <code>true</code> if only exact identifier match
-	 * satisfies this dependency, <code>false</code> if compatible
-	 * plug-in will satisfy this dependency.
-	 * @deprecated Callers of this method should interrogate the current {@link State}
-	 * of the platform.  For example,
-	 * <pre>
-	 *     State state = Platform.getPlatformAdmin().getState();
-	 *     BundleDescription bundle = state.getBundle("my plug-in id", my plug-in version);
-	 *     BundleSpecification spec = bundle.getRequiredBundle("required plug-in id");
-	 *     VersionRange versionRange = spec.getVersionRange();
-	 *     if (versionRange == null || versionRange.getMinimum() == null)
-	 *         return false;
-	 *     Version minimum = versionRange.getMinimum();
-	 *     Version maximum = versionRange.getMaximum() == null ? Version.maxVersion : versionRange.getMaximum();
-	 *     if (!minimum.isInclusive() || maximum.isInclusive())
-	 *         return false;
-	 *     else if (minimum.getMajorComponent() == maximum.getMajorComponent() - 1)
-	 *         return false;
-	 *     else if (minimum.getMajorComponent() != maximum.getMajorComponent())
-	 *         return false;
-	 *     else if (minimum.getMinorComponent() == maximum.getMinorComponent() - 1)
-	 *         return true;
-	 *     return false;
-	 * </pre>
-	 */
-	@Deprecated
-	public boolean isMatchedAsExact();
-
-	/**
-	 * Indicates whether this plug-in prerequisite is optional.  If a required (i.e., non-optional)
-	 * prerequisite is missing, this plugin is disabled.
-	 *
-	 * @return <code>true</code> if this prerequisite is optional, <code>false</code> otherwise
-	 * @deprecated Given a manifest element equivalent of a plug-in
-	 * prerequisite (see the class comment), this method is replaced by:
-	 * <pre>
-	 *     "true".equals(element.getAttribute(Constants.OPTIONAL_ATTRIBUTE);
-	 * </pre>
-	 */
-	@Deprecated
-	public boolean isOptional();
-}
diff --git a/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/IPluginRegistry.java b/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/IPluginRegistry.java
deleted file mode 100644
index abd1774..0000000
--- a/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/IPluginRegistry.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2000, 2015 IBM Corporation and others.
- *
- * This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
- *
- * Contributors:
- *     IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.core.runtime;
-
-/**
- * As the org.eclipse.core.runtime.compatibility plug-in has been removed in
- * Eclipse 4.6 this interface is not supported anymore.
- *
- * @noextend This interface is not intended to be extended by clients.
- * @noreference This interface is not intended to be referenced by clients.
- * @noimplement This interface is not intended to be implemented by clients.
- *
- *              This interface is planned to be deleted, see
- *              https://bugs.eclipse.org/bugs/show_bug.cgi?id=544339
- *
- */
-@Deprecated
-public interface IPluginRegistry {
-	/**
-	 * As the org.eclipse.core.runtime.compatibility plug-in has been removed in
-	 * Eclipse 4.6 this method is not supported anymore.
-	 *
-	 * @deprecated Replaced by {@link IExtensionRegistry#getConfigurationElementsFor(String)}
-	 *             .
-	 */
-	@Deprecated
-	public IConfigurationElement[] getConfigurationElementsFor(String extensionPointId);
-
-	/**
-	 * As the org.eclipse.core.runtime.compatibility plug-in has been removed in
-	 * Eclipse 4.6 this method is not supported anymore.
-	 *
-	 * @deprecated Replaced by {@link IExtensionRegistry#getConfigurationElementsFor(String, String)}.
-	 */
-	@Deprecated
-	public IConfigurationElement[] getConfigurationElementsFor(String pluginId, String extensionPointName);
-
-	/**
-	 * As the org.eclipse.core.runtime.compatibility plug-in has been removed in
-	 * Eclipse 4.6 this method is not supported anymore.
-	 *
-	 * @deprecated Replaced by {@link IExtensionRegistry#getConfigurationElementsFor(String, String, String)}.
-	 */
-	@Deprecated
-	public IConfigurationElement[] getConfigurationElementsFor(String pluginId, String extensionPointName, String extensionId);
-
-	/**
-	 * As the org.eclipse.core.runtime.compatibility plug-in has been removed in
-	 * Eclipse 4.6 this method is not supported anymore.
-	 *
-	 * @deprecated Replaced by {@link IExtensionRegistry#getExtension(String, String)}.
-	 */
-	@Deprecated
-	public IExtension getExtension(String extensionPointId, String extensionId);
-
-	/**
-	 * As the org.eclipse.core.runtime.compatibility plug-in has been removed in
-	 * Eclipse 4.6 this method is not supported anymore.
-	 *
-	 * @deprecated Replaced by {@link IExtensionRegistry#getExtension(String, String, String)}.
-	 */
-	@Deprecated
-	public IExtension getExtension(String pluginId, String extensionPointName, String extensionId);
-
-	/**
-	 * As the org.eclipse.core.runtime.compatibility plug-in has been removed in
-	 * Eclipse 4.6 this method is not supported anymore.
-	 * @deprecated Replaced by {@link IExtensionRegistry#getExtensionPoint(String)}.
-	 */
-	@Deprecated
-	public IExtensionPoint getExtensionPoint(String extensionPointId);
-
-	/**
-	 * As the org.eclipse.core.runtime.compatibility plug-in has been removed in
-	 * Eclipse 4.6 this method is not supported anymore.
-	 *
-	 * @deprecated Replaced by {@link IExtensionRegistry#getExtensionPoint(String, String)}.
-	 */
-	@Deprecated
-	public IExtensionPoint getExtensionPoint(String pluginId, String extensionPointName);
-
-	/**
-	 * As the org.eclipse.core.runtime.compatibility plug-in has been removed in
-	 * Eclipse 4.6 this method is not supported anymore.
-	 *
-	 * @deprecated Replaced by {@link IExtensionRegistry#getExtensionPoints()}.
-	 */
-	@Deprecated
-	public IExtensionPoint[] getExtensionPoints();
-
-
-}
diff --git a/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/Platform.java b/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/Platform.java
index e9af481..0ce294d 100644
--- a/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/Platform.java
+++ b/bundles/org.eclipse.core.runtime/src/org/eclipse/core/runtime/Platform.java
@@ -788,17 +788,6 @@
 	}
 
 	/**
-	 * As the org.eclipse.core.runtime.compatibility plug-in has been removed in
-	 * Eclipse 4.6 this method is not supported anymore.
-	 *
-	 * See the comments on {@link IPluginRegistry} and its methods for details.
-	 */
-	@Deprecated
-	public static IPluginRegistry getPluginRegistry() {
-		return null;
-	}
-
-	/**
 	 * Returns the location in the local file system of the plug-in
 	 * state area for the given plug-in.
 	 * The platform must be running.