Generalmente, el primer paso de la construcción de una UI de equipo consiste en implementar una página de asistente que permita a los usuarios configurar un proyecto para el soporte de equipo del conector. En ella, el ID del proveedor del equipo se añadirá a las propiedades del proyecto. Participará en la configuración del proyecto efectuando contribuciones al punto de extensión org.eclipse.team.ui.configurationWizards. Este asistente se muestra cuando el usuario elige Equipo->Compartir proyecto...
Todo esto lo veremos en el contexto de la implementación del cliente CVS. A continuación figuran los códigos XML del asistente de configuración procedentes de la UI de CVS.
<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>
Como de costumbre, los conectores suministran una clase (atributo class) que implementa la extensión, y un id exclusivo que identifica la extensión. El nombre y el icono (atributos name e icon) se muestran en la primera página del asistente de configuración del proyecto, por si se puede elegir de entre varios proveedores.
Una vez que el usuario ha seleccionado un proveedor, la página siguiente muestra información de configuración específica del proveedor. (Si su proveedor es el único conector de proveedor de equipo instalado, el asistente pasa directamente a su página). El asistente debe implementar la interfaz IConfigurationWizard, que inicializa el asistente para un entorno de trabajo y un proyecto especificados. El resto de la implementación depende del diseño del asistente. Deberá reunir toda la información que se necesite para asociar el proyecto al soporte del equipo.
Una vez completado el asistente, debe correlacionar el proveedor del equipo con el proyecto utilizando el método RepositoryProvider.map(IProject, String). La correlación maneja el proceso de asignar a su proyecto la propiedad persistente del proyecto correcto.
El cliente CVS realiza este proceso en el método setSharing del correspondiente proveedor, método al que se llama en el momento de finalizar el asistente:
public void setSharing(IProject project, FolderSyncInfo info, IProgressMonitor monitor) throws TeamException { // Asegurarse de que la información proporcionada coincide con la del proyecto ... // Asegurarse de que la ubicación proporcionada está gestionada ... // Registrar el proyecto en el equipo RepositoryProvider.map(project, CVSProviderPlugin.getTypeId()); }