Jusqu'alors, l'API de ressources a été considérée comme le moyen de modifier des ressources situées dans le système de fichiers utilisateur. Il s'agit en effet de la structure de base de l'espace de travail, mais un plug-in peut également ajouter des fonctions pour manipuler des ressources gérées à un autre endroit. Par exemple, les plug-ins de la plate-forme Support d'équipe permettent de travailler avec des ressources sous le contrôle d'un référentiel de versionnage.
L'API de ressource inclut des possibilités qui ont été ajoutées spécifiquement afin de permettre aux plug-ins de prise en charge d'équipe et aux plug-ins qui implémentent des fournisseurs de référentiel d'utiliser la prise en charge d'équipe. Vous découvrirez ci-dessous le mécanisme générique d'enregistrement des points d'ancrage des ressources. Pour plus d'informations sur l'utilisation d'équipe de ces points d'ancrage, reportez-vous à la section Implémentation du fournisseur de référentiel.
Ce type de point d'ancrage permet au plug-in d'équipe et à ses fournisseurs de contrôler l'implémentation des déplacements et des suppressions de ressources. Le point d'ancrage permet également d'empêcher la réalisation de ces opérations Les réalisateurs peuvent fournir d'autres implémentations pour déplacer ou supprimer des fichiers, des dossiers et des projets.
Le plug-in d'équipe utilise le point d'extension org.eclipse.core.resources.moveDeleteHook pour enregistrer son point d'ancrage :
<extension point="org.eclipse.core.resources.moveDeleteHook" id="MoveDeleteHook"> <moveDeleteHook class="org.eclipse.team.internal.core.MoveDeleteManager"/> </extension>
La classe indiquée doit implémenter IMoveDeleteHook, appelé par la plate-forme chaque fois qu'une ressource est déplacée ou supprimée. Le plug-in d'équipe installe un gestionnaire de points d'ancrage de déplacement/suppression pouvant déterminer quel fournisseur d'équipe contrôle une ressource et appeler son point d'ancrage.
Remarque : le point d'ancrage de déplacement/suppression a été conçu spécialement pour être utilisé par le plug-in d'équipe et d'autres clients du fournisseur de référentiel. Son but n'est pas une utilisation d'ordre général. Les fournisseurs d'équipe ne doivent pas installer le point d'ancrage à l'aide du point d'extension, mais au contraire implémenter leur point d'ancrage dans la classe RepositoryProvider. Consultez la section Points d'ancrage de modifications de ressources d'équipe pour en savoir plus sur l'utilisation de ces points d'ancrage.
Les fournisseurs du référentiel d'équipe peuvent également empêcher ou participer à l'édition et à l'enregistrement d'un fichier. Le plug-in d'équipe effectue cette opération à l'aide du point d'extension org.eclipse.core.resources.fileModificationValidator pour enregistrer un valideur appelé chaque fois qu'une ressource est modifiée.
<extension point="org.eclipse.core.resources.fileModificationValidator" id="FileValidator"> <fileModificationValidator class="org.eclipse.team.internal.core.FileModificationValidatorManager"/> </extension>
La classe indiquée doit implémenter IFileModificationValidator, appelé par la plate-forme chaque fois qu'une ressource est enregistrée ou ouverte. Le plug-in d'équipe installe un gestionnaire de modifications de fichiers pouvant déterminer quel fournisseur d'équipe contrôle une ressource et appeler son valideur.
Remarque : Le point d'ancrage de validation de modification de fichier a été conçu spécifiquement pour être utilisé par le plug-in du core d'équipe. Il n'est pas destiné à un usage général. Les fournisseurs d'équipe ne doivent pas installer le point d'ancrage à l'aide du point d'extension, mais implémenter le point d'ancrage dans leur classe de fournisseur de référentiel. Pour plus d'informations sur l'utilisation de ces points d'ancrage, reportez-vous à la section Points d'ancrage de modification des ressources d'éuipe.