Configuration d'un projet

En général, la première étape de la construction d'une interface graphique d'équipe consiste à implémenter une page d'assistant permettant aux utilisateurs de configurer un projet pour le support d'équipe de votre plug-in. L'ID de votre fournisseur d'équipe pourra ainsi être ajouté aux propriétés du projet. Vous participez à la configuration d'un projet en contribuant au point d'extension org.eclipse.team.ui.configurationWizards. Cet assistant s'ouvre lorsque vous choisissez Equipe->Partager un projet...

Nous allons étudier ce cas dans le contexte de l'implémentation du client CVS. Voici les marques de l'interface graphique pour son assistant de configuration :

<extension
      point="org.eclipse.team.ui.configurationWizards">
   <wizard
        name="%SharingWizard.name"
        icon="icons/full/wizards/newconnect_wiz.gif"
        class="org.eclipse.team.internal.ccvs.ui.wizards.SharingWizard"
        id="org.eclipse.team.ccvs.ui.SharingWizard">
   </wizard>
</extension>

Comme d'habitude, les plug-in fournissent une classe implémentant l'extension et un ID unique pour identifier leurs extensions. Le nom et l'icône apparaissent dans la première page de l'assistant de configuration du projet s'il existe plusieurs fournisseurs.

Une fois que l'utilisateur a sélectionné un fournisseur, la page suivant présente des informations de configuration spécifique à ce fournisseur. Si ce dernier correspond au seul plug-in installé, l'assistant passe directement à votre page. Votre assistant doit implémenter IConfigurationWizard, qui l'initialise pour un plan de travail et un projet déterminés. Le reste de l'implémentation dépend de la conception de votre assistant. Vous devez rassembler toutes les informations nécessaires pour associer le projet à votre support d'équipe.  

Une fois l'assistant arrivé à la fin, vous devez mapper votre fournisseur d'équipe vers le projet avec RepositoryProvider.map(IProject, String). Le mappage gère l'affectation de la propriété persistante adaptée à votre projet.

Le client CVS agit ainsi dans la méthode setSharing de son fournisseur, appelée au terme de l'assistant :

public void setSharing(IProject project, FolderSyncInfo info, IProgressMonitor monitor) throws TeamException {
	
	// Les infos fournies correspondent à celles du projet.
	...		
	// L'emplacement fourni est géré.
	...		
	// Enregistre le projet avec l'équipe.
	RepositoryProvider.map(project, CVSProviderPlugin.getTypeId());
}

 

Copyright IBM Corporation and others 2000, 2003.