public interface ProjectState
Project
s to inform the
ProjectManager
of important lifecycle events.
Currently the only available events are modification of the project metadata
and project deletion notification.
However in the future other events may be added, such as moving
the project, which the project manager would need to be informed of.
This interface may only be implemented by the project manager. A
ProjectFactory
will receive an instance in
ProjectFactory.loadProject(org.openide.filesystems.FileObject, org.netbeans.spi.project.ProjectState)
.
Modifier and Type | Method and Description |
---|---|
void |
markModified()
Inform the manager that the project's in-memory state has been modified
and that a call to
ProjectFactory.saveProject(org.netbeans.api.project.Project) may be needed. |
void |
notifyDeleted()
Inform the manager that the project has been deleted.
|
void markModified()
ProjectFactory.saveProject(org.netbeans.api.project.Project)
may be needed.
May not be called during ProjectFactory.loadProject(org.openide.filesystems.FileObject, org.netbeans.spi.project.ProjectState)
.
Acquires write access.
void notifyDeleted() throws IllegalStateException
Inform the manager that the project has been deleted. The project will
be removed from any ProjectManager
's mappings.
If ProjectManager.findProject(org.openide.filesystems.FileObject)
is called on the project directory,
the ProjectFactories
are asked again to recognize
the project.
The project is no longer recognized as created by the ProjectManager
.
Acquires write access.
IllegalStateException
- if notifyDeleted is called more than once for a project.