diff --git a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CCorePlugin.java b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CCorePlugin.java index 011a9416b8c..d472105e1db 100644 --- a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CCorePlugin.java +++ b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CCorePlugin.java @@ -610,7 +610,7 @@ public class CCorePlugin extends Plugin { } /** - * @deprecated use getCProjetDescription(IProject project, boolean create) + * @deprecated use {@link #getProjectDescription(IProject, boolean)} instead */ @Deprecated public ICDescriptor getCProjectDescription(IProject project) throws CoreException { @@ -618,14 +618,19 @@ public class CCorePlugin extends Plugin { } /** - * Get the ICDescriptor for the given project, if create is true then a descriptor will be created - * if one does not exist. - * + * Please use {@link #getProjectDescription(IProject, boolean)} to fetch the + * ICProjectDescription for the project. And use {@link ICProjectDescription#getConfigurations()} + * to get an array of ICConfigurationDescriptions, which have similar API to ICDescriptor, + * allowing you to store settings and configure extensions at the Configuration level + * rather than at the project level. + * * @param project * @param create * @return ICDescriptor or null if create is false and no .cdtproject file exists on disk. * @throws CoreException + * @deprecated */ + @Deprecated public ICDescriptor getCProjectDescription(IProject project, boolean create) throws CoreException { return fNewCProjectDescriptionManager.getDescriptorManager().getDescriptor(project, create); } @@ -642,6 +647,16 @@ public class CCorePlugin extends Plugin { } } + /** + * @deprecated Settings should be set per ICConfigurationDescription rather than + * global to the project. Please use {@link #getProjectDescription(IProject, boolean)} + * to fetch the ICProjectDescription for the project. And use + * {@link ICProjectDescription#getConfigurations()} to get an array of + * ICConfigurationDescriptions, which have similar API to ICDescriptor, + * allowing you to store settings and configure extensions at the Configuration level + * rather than at the project level. + */ + @Deprecated public ICDescriptorManager getCDescriptorManager() { return fNewCProjectDescriptionManager.getDescriptorManager(); } diff --git a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CDescriptorEvent.java b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CDescriptorEvent.java index 1efb24f2a10..69ba44b73ba 100644 --- a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CDescriptorEvent.java +++ b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/CDescriptorEvent.java @@ -12,10 +12,15 @@ package org.eclipse.cdt.core; import java.util.EventObject; +import org.eclipse.cdt.core.settings.model.CProjectDescriptionEvent; +import org.eclipse.cdt.core.settings.model.ICProjectDescriptionListener; + /** * @noextend This class is not intended to be subclassed by clients. * @noinstantiate This class is not intended to be instantiated by clients. + * @deprecated register {@link ICProjectDescriptionListener} for {@link CProjectDescriptionEvent} */ +@Deprecated public class CDescriptorEvent extends EventObject { /** diff --git a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptor.java b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptor.java index a7401e723a2..92db301ff40 100644 --- a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptor.java +++ b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptor.java @@ -30,7 +30,11 @@ import org.w3c.dom.Element; * * @noextend This interface is not intended to be extended by clients. * @noimplement This interface is not intended to be implemented by clients. + * @deprecated as this API is not configuration aware. Replaced by + * {@link ICConfigurationDescription} which can be fetched with + * {@link ICProjectDescription#getConfigurations()} */ +@Deprecated public interface ICDescriptor { public ICOwnerInfo getProjectOwner(); public String getPlatform(); diff --git a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptorListener.java b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptorListener.java index 0f00b60c2b7..e233896138a 100644 --- a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptorListener.java +++ b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptorListener.java @@ -10,6 +10,13 @@ *******************************************************************************/ package org.eclipse.cdt.core; +import org.eclipse.cdt.core.settings.model.CProjectDescriptionEvent; +import org.eclipse.cdt.core.settings.model.ICProjectDescriptionListener; + +/** + * @deprecated register {@link ICProjectDescriptionListener} for {@link CProjectDescriptionEvent} + */ +@Deprecated public interface ICDescriptorListener { public void descriptorChanged(CDescriptorEvent event); } diff --git a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptorManager.java b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptorManager.java index 36ad2e0e0fd..463e97ce622 100644 --- a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptorManager.java +++ b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptorManager.java @@ -12,6 +12,7 @@ package org.eclipse.cdt.core; import org.eclipse.cdt.core.settings.model.ICProjectDescription; +import org.eclipse.cdt.core.settings.model.ICProjectDescriptionManager; import org.eclipse.core.resources.IProject; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IProgressMonitor; @@ -19,7 +20,9 @@ import org.eclipse.core.runtime.IProgressMonitor; /** * @noextend This interface is not intended to be extended by clients. * @noimplement This interface is not intended to be implemented by clients. + * @deprecated replace with {@link ICProjectDescriptionManager} & {@link ICProjectDescription} */ +@Deprecated public interface ICDescriptorManager { public void configure(IProject project, String id) throws CoreException; diff --git a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptorOperation.java b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptorOperation.java index ccbfe545013..2225267fe3c 100644 --- a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptorOperation.java +++ b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICDescriptorOperation.java @@ -18,7 +18,9 @@ import org.eclipse.core.runtime.IProgressMonitor; /** * @noextend This interface is not intended to be extended by clients. * @noimplement This interface is not intended to be implemented by clients. + * @deprecated */ +@Deprecated public interface ICDescriptorOperation { /** diff --git a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICExtensionReference.java b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICExtensionReference.java index f0ad0dd7b6f..c8c2c8060d6 100644 --- a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICExtensionReference.java +++ b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICExtensionReference.java @@ -11,6 +11,7 @@ package org.eclipse.cdt.core; import org.eclipse.cdt.core.settings.model.ICConfigExtensionReference; +import org.eclipse.cdt.core.settings.model.ICConfigurationDescription; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IConfigurationElement; @@ -27,7 +28,9 @@ import org.eclipse.core.runtime.IConfigurationElement; * * @noextend This interface is not intended to be extended by clients. * @noimplement This interface is not intended to be implemented by clients. + * @deprecated replaced with {@link ICConfigExtensionReference} obtained from an {@link ICConfigurationDescription} */ +@Deprecated public interface ICExtensionReference { /** diff --git a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICOwner.java b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICOwner.java index 8a7fa44535e..09386c9a645 100644 --- a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICOwner.java +++ b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/core/ICOwner.java @@ -15,7 +15,9 @@ import org.eclipse.core.runtime.CoreException; /** * @noextend This interface is not intended to be extended by clients. * @noimplement This interface is not intended to be implemented by clients. + * @deprecated */ +@Deprecated public interface ICOwner { public void configure(ICDescriptor cproject) throws CoreException; public void update(ICDescriptor cproject, String extensionID) throws CoreException;