public interface Project extends Lookup.Provider(Code)
Represents one IDE project in memory.
Never cast a project instance to any subtype.
(Nor call
Object.getClass on the Project instance.)
The project
manager is free to wrap any project in an unspecified proxy for its own
purposes. For extensibility, use
Project.getLookup .
Note that this API is primarily of interest to project type provider
modules, and to infrastructure and generic GUI. Most other modules providing
tools or services should not need to explicitly model projects, and
should not be using this API much or at all.
getLookup() Get any optional abilities of this project.
If you are providing a project, there are a number of interfaces
which you should consider implementing and including in lookup, some of which
are described below.
FileObject
getProjectDirectory() Gets an associated directory where the project metadata and possibly sources live.
If you are providing a project, there are a number of interfaces
which you should consider implementing and including in lookup, some of which
are described below. If you are using a project from another module,
there are some cases where you will want to ask a project for a particular
object in lookup (e.g. ExtensibleMetadataProvider) but in most
cases you should not; in the case of queries, always call the static query
API helper method, rather than looking for the query implementation objects
yourself. In the case of ProjectInformation and Sources,
use
ProjectUtils rather than directly searching the project lookup.
Gets an associated directory where the project metadata and possibly sources live.
In the case of a typical Ant project, this is the top directory, not the
project metadata subdirectory.
a directory