Fournisseurs de référentiel d'équipe

org.eclipse.team.core.repository

2.0

Le plug-in Team renferme la notion de référentiels. Un référentiel a pour objet de fournir le support de partage des ressources entre les membres d'une équipe. Les référentiels sont configurés sur la base d'un par projet. Vous ne pouvez associer qu'un seul référentiel à la fois à un projet.

Les référentiels qui développent ce point d'extension peuvent fournir des implémentations pour les règles courantes de référentiel liées à la modification, au déplacement et à la suppression de ressource. Pour plus de détails, reportez-vous aux interfaces IFileModificationValidator et MoveDeleteHook.

Un type de référentiel peut également être indiqué afin de fournir une fonctionnalité spécifique indépendante du projet, telle que org.eclipse.team.core.ProjectSetCapability.

De manière facultative, un type de fournisseur de référentiel peut indiquer qu'il peut importer des projets à partir d'un second fournisseur, au cas où le plug-in du second fournisseur n'est pas disponible dans l'installation en cours. C'est un moyen de prendre en charge la migration de l'implémentation d'un fournisseur vers un autre pour lequel la réutilisation du même ID pour les deux fournisseurs n'était pas possible.

Un type de fournisseur de référentiel peut également spécifier un ou plusieurs chemins d'accès à des métafichiers (délimités par des virgules) relatifs à un conteneur parent. Si un projet non partagé ou un dossier contient les fichiers correspondant à tous les chemins d'accès des métafichiers associés à une définition de référentiel, la méthode RepositoryProviderType#metaFilesDetected sera appelée avec le conteneur parent comme argument. Cela donne la possibilité au type de référentiel de marquer les fichiers comm étant propres à l'équipe et de potentiellement partager le projet. Reportez-vous à la documentation javadoc de la méthode mentionnée ci-dessus pour plus de détails.

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

La valeur de l'attribut de classe doit représenter une sous-classe de org.eclipse.team.core.RepositoryProvider et la valeur de l'attribut typeClass doit représenter une sous-classe de org.eclipse.team.core.RepositoryProviderType

L'implémentation fournie de RepositoryProvider offre des méthodes auxiliaires et du code courant pour mapper et annuler le mappage de fournisseurs vers des projets. Facultatif, RepositoryProviderType permet l'importation et l'exportation d'un ensemble de projets via ProjectSetCapability.