Prosjektsett

Siden ressursene i et prosjekt under versjonskontroll oppbevares i datalageret, er det mulig å dele prosjekter med gruppemedlemmer ved å dele en referanse til den datalagerspesifikke informasjonen som trengs for å rekonstruere et prosjekt i arbeidsområdet. Dette gjøres ved hjelp av en spesiell fileksporttype for gruppeprosjektsett.  

 

I versjon 3.0 er programmeringsgrensesnitt lagt til i ProjectSetCapability slik at datalagerleverandører kan deklarere en klasse som implementerer prosjektlagring for prosjekter de håndterer. Når brukeren velger å eksportere prosjektsett, er det bare prosjekter som er konfigurert med datalagre som definerer prosjektsett, som vises som kandidater for eksport. Dette programmeringsgrensesnittet erstatter gamle grensesnittet for serialisering av prosjektsett (se nedenfor).

Funksjonsklassen for prosjektsett for en datalagerleverandør hentes fra RepositoryProviderType-klassen, som registreres i den samme utvidelsen som datalagerleverandøren. Eksempel:

<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>

Før versjon 3.0, ble utvidelsespunktet org.eclipse.team.core.projectSets brukt til å angi at datalagerleverandører kunne deklarere en klasse som implementerer prosjektlagring for prosjekter som de håndterer. Når brukeren velger å eksportere prosjektsett, er det bare prosjekter som er konfigurert med datalagre som definerer prosjektsett, som vises som kandidater for eksport.

For eksempel deklarerer CVS-klienten følgende:

<extension point="org.eclipse.team.core.projectSets">
	<projectSets id="org.eclipse.team.cvs.core.cvsnature" class="org.eclipse.team.internal.ccvs.ui.CVSProjectSetSerializer"/>
    </extension>

Den oppgitte klassen må implementere IProjectSetSerializer. Det er fortsatt støtte for bruk av dette grensesnittet i versjon 3.0, men det er foreldet.