public abstract class PathEntryContainerInitializer extends Object
Constructor and Description |
---|
PathEntryContainerInitializer()
Creates a new cpath container initializer.
|
Modifier and Type | Method and Description |
---|---|
boolean |
canUpdatePathEntryContainer(org.eclipse.core.runtime.IPath containerPath,
ICProject project)
Returns
true if this container initializer can be requested to perform updates
on its own container values. |
String |
getDescription(org.eclipse.core.runtime.IPath containerPath,
ICProject project) |
abstract void |
initialize(org.eclipse.core.runtime.IPath containerPath,
ICProject project) |
void |
requestPathEntryContainerUpdate(org.eclipse.core.runtime.IPath containerPath,
ICProject project,
IPathEntryContainer containerSuggestion)
Request a registered container definition to be updated according to a container suggestion.
|
public PathEntryContainerInitializer()
public abstract void initialize(org.eclipse.core.runtime.IPath containerPath, ICProject project) throws org.eclipse.core.runtime.CoreException
org.eclipse.core.runtime.CoreException
public boolean canUpdatePathEntryContainer(org.eclipse.core.runtime.IPath containerPath, ICProject project)
true
if this container initializer can be requested to perform updates
on its own container values. If so, then an update request will be performed using
PathEntryContainerInitializer#requestPathEntryContainerUpdate
/
containerPath
- the path of the container which requires to be updatedproject
- the project for which the container is to be updatedtrue
if the container can be updatedpublic void requestPathEntryContainerUpdate(org.eclipse.core.runtime.IPath containerPath, ICProject project, IPathEntryContainer containerSuggestion) throws org.eclipse.core.runtime.CoreException
IMPORTANT: In reaction to receiving an update request, a container initializer will update the corresponding
container definition (after reconciling changes) at its earliest convenience, using
CoreModel#setPathContainer(IPath, ICProject[], IPathEntryContainer[], IProgressMonitor)
.
Until it does so, the update will not be reflected in the Java Model.
In order to anticipate whether the container initializer allows to update its containers, the predicate
PathEntryContainerInitializer#canUpdatePathEntryContainer
should be used.
containerPath
- the path of the container which requires to be updatedproject
- the project for which the container is to be updatedcontainerSuggestion
- a suggestion to update the corresponding container definitionorg.eclipse.core.runtime.CoreException
- when CoreModel#setPathEntryContainer
would throw any.CoreModel.setPathEntryContainer(ICProject[], IPathEntryContainer, org.eclipse.core.runtime.IProgressMonitor)
,
canUpdatePathEntryContainer(IPath, ICProject)
Copyright (c) IBM Corp. and others 2004, 2020. All Rights Reserved.