Project sets
Since the resources inside a project under version control are kept in the
repository, it is possible to share projects with team members by sharing a
reference to the repository specific information needed to reconstruct a project
in the workspace. This is done using a special type of file export for team
project sets.
In 3.0, API was added to
ProjectSetCapability
to allow repository providers to declare a class that implements project saving
for projects under their control. When the user chooses to export project
sets, only the projects configured with repositories that define project sets
are shown as candidates for export. This API replaces the old project set serialization
API (see below).
The project set capability class for a repository provider is obtained from
the
RepositoryProviderType
class which is registered in the same extension as the repository provider.
For example:
<extension point="org.eclipse.team.core.repository">
<repository
typeClass="org.eclipse.team.internal.ccvs.core.CVSTeamProviderType"
class="org.eclipse.team.internal.ccvs.core.CVSTeamProvider"
id="org.eclipse.team.cvs.core.cvsnature">
</repository>
</extension>
Prior to 3.0, The
org.eclipse.team.core.projectSets
extension point allowed repository providers to declare a class that implements
project saving for projects under their control. When the user chooses
to export project sets, only the projects configured with repositories that
define project sets are shown as candidates for export.
For example, the CVS client declares the following:
<extension point="org.eclipse.team.core.projectSets">
<projectSets id="org.eclipse.team.cvs.core.cvsnature" class="org.eclipse.team.internal.ccvs.ui.CVSProjectSetSerializer"/>
</extension>
The specified class must implement
IProjectSetSerializer.
Use of this interface is still supported in 3.0 but has been deprecated.