|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Represents one IDE project in memory.
Never cast a project instance to any subtype. The project
manager is free to wrap any project in an unspecified proxy for its own
purposes. For extensibility, use 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.
Method Summary | |
Lookup |
getLookup()
Get any optional abilities of this project. |
FileObject |
getProjectDirectory()
Gets an associated directory where the project metadata and possibly sources live. |
Method Detail |
public FileObject getProjectDirectory()
public Lookup getLookup()
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.
The following abilities are recommended:
ProjectInformation
LogicalViewProvider
CustomizerProvider
Sources
ActionProvider
SubprojectProvider
AuxiliaryConfiguration
CacheDirectoryProvider
You might also have e.g.:
FileBuiltQueryImplementation
SharabilityQueryImplementation
ProjectOpenedHook
RecommendedTemplates
PrivilegedTemplates
ClassPathProvider
SourceForBinaryQueryImplementation
SourceLevelQueryImplementation
JavadocForBinaryQueryImplementation
AccessibilityQueryImplementation
MultipleRootsUnitTestForSourceQueryImplementation
ProjectXmlSavedHook
AntArtifactProvider
Typical implementation:
private final Lookup lookup = Lookups.fixed(new Object[] { new MyAbility1(this), // ... }); public Lookup getLookup() { return lookup; }
getLookup
in interface Lookup.Provider
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |