Ryhmän tietovaraston toimittaja

org.eclipse.team.core.repository

2.0

Ryhmälisäosa sisältää tietovarastomäärityksiä. Tietovarasto on tarkoitettu ryhmän jäsenten väliseen resurssien jakamiseen. Tietovarastot määritetään projektikohtaisesti. Projektille voi määrittää vain yhden tietovarastovastineen kerrallaan.

Tämän laajennuspisteen tietovarastolaajennuksia voi käyttää tietovarastokohtaisten muokkaus-, siirto- ja poistosääntöjen toteutuksina. Lisätietoja on IFileModificationValidator- ja MoveDeleteHook-liittymien ohjeissa.

Määrittämällä tietovarastolaji voidaan käyttää toimintoja, jotka eivät ole projektikohtaisia (esimerkiksi org.eclipse.team.core.ProjectSetCapability).

Tietovaraston toimittajalajin voi vaihtoehtoisesti määrittää tuomaan toisen sellaisen toimittajan projekteja, jonka lisäosa ei ole käytettävissä nykyisessä asennuksessa. Tämä mekanismi on tarkoitettu tilanteisiin, joissa siirrytään toimittajatoteutuksesta toiseen eikä toimittajilla voi olla samaa toimittajatunnusta.

Tietovaraston toimittajalajiin voidaan määrittää myös metatiedostopolkuja. Polkumääritykset erotetaan toisistaan pilkuilla, ja ne on määritettävä suhteessa päätietovarastoon. Jos jokin jakamaton projekti tai kansio sisältää tiedostoja, jotka vastaavat kaikkia tietovarastomääritykseen liitettyjä metatiedostopolkuja, tehdään RepositoryProviderType#metaFilesDetected-metodikutsu käyttämällä argumenttina päätietovaraston tunnusta. Tällöin tietovarastolaji voi merkitä tiedostot ryhmän yksityiskäyttöön tai jakaa projektin. Lisätietoja on edellä mainitun metodin Javadoc-ohjeessa.

<!ELEMENT extension (repository)>

<!ATTLIST extension

point CDATA #REQUIRED>


<!ELEMENT repository EMPTY>

<!ATTLIST repository

id               CDATA #IMPLIED

class            CDATA #REQUIRED

typeClass        CDATA #IMPLIED

canImportId      CDATA #IMPLIED

metaFilePaths    CDATA #IMPLIED

fileSystemScheme CDATA #IMPLIED>


<extension point=

"org.eclipse.team.core.repository"

>

<repository class=

"org.eclipse.myprovider.MyRepositoryProvider"

typeClass=

"org.eclipse.myprovider.MyRepositoryProviderType"

id=

"org.eclipse.myprovider.myProviderID"

canImportId=

"org.eclipse.myprovider.myOldProviderID"

metaFilePaths=

".meta/files,.meta/version"

>

</repository>

</extension>

Class-määritteen arvon on vastattava org.eclipse.team.core.RepositoryProvider-luokan aliluokkaa ja typeClass-määritteen arvon org.eclipse.team.core.RepositoryProviderType-luokan aliluokkaa.

Toimitettu RepositoryProvider-toteutus sisältää aputoimintometodeja ja yleiskoodin toimittajien ja projektien vastinemääritystä sekä tällaisten vastinemääritysten purkua varten. Valinnainen RepositoryProviderType-toteutus sisältää projektijoukon tuonti- ja vientitoiminnot ProjectSetCapability-luokan avulla.