Csapatlerakat-szolgáltató

org.eclipse.team.core.repository

2.0

A Csapatbedolgozó tartalmazza a lerakatok fogalmát. A lerakat feladata, hogy támogassa az erőforrások Csapattagok közötti megosztását. A lerakatok projektenkénti alapon vannak beállítva. Egyszerre csak egy lerakat képezhető le egy projektre.

A kiterjesztési pontot kiterjesztő lerakatok megvalósításokat biztosíthatnak az erőforrás-módosítások, -áthelyezés és -törlés általános lerakatspecifikus szabályaihoz. Részletes információkért tekintse meg az alábbi felületeket: IFileModificationValidator és MoveDeleteHook.

Egy lerakattípus is megadható nem projektspecifikus funkciók megadásához, mint például az org.eclipse.team.core.ProjectSetCapability.

A lerakatszolgáltató-típus kijelölheti, hogy projekteket importálhat második szolgáltatótól abban az esetben, ha a második szolgáltató bedolgozó nem áll rendelkezésre az aktuális telepítésben. Ez annak érdekében biztosított, hogy támogassa az áttérést az egyik szolgáltatómegvalósításról a másikra, amelyben ugyanazon azonosító újbóli felhasználása két szolgáltatóhoz nem lehetséges.

A lerakatszolgáltató-típusa néhány olyan metafájlútvonalat is megadhat (vesszőkkel elválasztva), amelyek egy szülőtárolóhoz kapcsolódnak. Ha egy nem megosztott projekt vagy mappa olyan fájlokat tartalmaz, amelyek egy lerakatmeghatározáshoz tartozó összes metafájlútvonalnak megfelelnek, akkor a RepositoryProviderType#metaFilesDetected metódus a szülőtárolóval argumentumként kerül meghívásra. Erre azért van szükség, hogy a lerakattípus lehetőséget kapjon a fájlok csapatra nézve privátként megjelölésére és esetleg a projekt megosztására is. További részletek a fent említett metódus javadoc leírásában találhatók.

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


<extension point=

"org.eclipse.team.core.repository"

>

<repository class=

"org.eclipse.myprovider.MyRepositoryProvider"

typeClass=

"org.eclipse.myprovider.MyRepositoryProvider"

id=

"org.eclipse.myprovider.myProviderID"

canImportId=

"org.eclipse.myprovider.myOldProviderID"

metaFilePaths=

".meta/files,.meta/version"

>

</repository>

</extension>

A class attribútum értékének az org.eclipse.team.core.RepositoryProvider alosztályát, az typeClass attribútum értékének pedig az org.eclipse.team.core.RepositoryProviderType alosztályát kell ábrázolnia.

A RepositoryProvider adott megvalósítása segédmetódusokat és általános kódot biztosít a szolgáltatók projektekre leképezéséhez és a leképezés megszüntetéséhez. Az elhagyható RepositoryProviderType projekthalmaz-importálást és -exportálást biztosít a ProjectSetCapability elemen keresztül.