Página Extensiones

La página Extensiones se utiliza para examinar y editar extensiones de conectores. Las extensiones son el mecanismo central para proporcionar un determinado comportamiento a la plataforma. A menos que el conector sea una sencilla biblioteca de la API Java puesta a disposición de otros conectores, el comportamiento nuevo se proporciona en forma de extensión.

Los conectores contribuyen a los puntos de extensión definidos por esos conectores que necesitan. La sintaxis de una extensión debe coincidir con la definición del punto de extensión para que pueda procesarse correctamente. La lista total de puntos de extensión elegibles la calcula el PDE recorriendo todos los conectores visibles (tanto del área de trabajo como externos).

El asistente de extensión genérico proporcionado por el PDE simplemente explorará los puntos de extensión. Si se proporciona un esquema de extensión (consulte el apartado Esquema de punto de extensión), el asistente extraerá la gramática y los metadatos del punto de extensión del esquema.

Además del asistente genérico, están disponibles diversas plantillas de extensión. Son las mismas plantillas que pueden utilizarse para generar el contenido inicial del proyecto de conector. Su presencia en este punto permite organizar la creación de la extensión. Puede crear un conector con una vista simple y, a continuación, añadirle un editor o un asistente.

Ejemplo:  añadir una extensión de conjuntos de acciones

Para ilustrar el funcionamiento de la página Extensiones, añadiremos al conector la acción 'Hola, mundo del PDE'. Estaremos contribuyendo al punto de extensión org.eclipse.ui.actionSets.  En este ejemplo se da por supuesto que se está familiarizado con los puntos de extensión.  

Empezaremos por pulsar el botón Añadir... para seleccionar el asistente de extensión:

Selección del asistente de extensión

El asistente Extensión basada en esquema es el asistente por omisión, porque maneja las extensiones de manera genérica. Explorará los conectores y ofrecerá todos los puntos de extensión que encuentre, con o sin esquemas. Los que que tengan esquemas permitirán que el PDE ofrezca una ayuda mejor. Si falta un esquema de punto de extensión, el PDE permitirá añadir elementos y atributos a la extensión, pero no podrá verificar si son válidos para el punto de extensión elegido.

Si se pulsa Siguiente, aparecerá una lista de puntos de extensión. Seleccione org.eclipse.ui.actionSets y pulse Finalizar.

Asistente basado en esquema - selección de punto de extensión

El asistente añadirá la extensión nueva a la lista de extensiones. Puesto que esta extensión tiene asociado un esquema, podemos editar con más detalle la definición de la extensión. Seleccionamos la extensión que acabamos de añadir y elegimos Nuevo->actionSet en el menú emergente. Este elemento XML se ha definido como el único elemento válido que puede mostrarse en la definición de la extensión. 

Para todos los atributos obligatorios, el PDE creará valores por omisión.  El nombre por omisión del conjunto de acciones puede cambiarse por "Conjunto de acciones de ejemplo" seleccionando el elemento y cambiando la propiedad etiqueta de la vista Propiedades. En la lista de extensiones aparecerá el nombre nuevo. 

Página Extensiones del editor

Ahora necesitamos definir un menú y una acción para el conjunto de acciones. Si seleccionamos el conjunto de acciones y hacemos aparecer el menú en la sección "Hijos de elemento de extensión", el menú "Nuevo" ofrecerá dos opciones: menú y acción. Estas opciones se basan en la información del esquema para la extensión de conjuntos de acciones. En primer lugar, crearemos el menú.

  1. Seleccione Nuevo->menú para crear el menú.  
  2. Selecciónelo y cambie sus propiedades. Cambie el id por "sampleMenu" y su etiqueta por "Menú de ejemplo".
  3. Con el objeto menú seleccionado, haga aparecer un menú y seleccione Nuevo->separador. Debería aparecer un hijo nuevo.
  4. Seleccione "separador" y cambie su nombre por "sampleGroup". Esto creará un grupo con nombre en el menú que podemos utilizar para proporcionar la acción.

Podemos crear la acción de forma parecida:

  1. Seleccione Nuevo->acción para crear una acción.  
  2. Selecciónela y cambie sus propiedades. Cambie su etiqueta por "&Acción de ejemplo" y su menubarPath por "sampleMenu/sampleGroup". Esto añadirá la acción al menú que acabamos de definir.

El último elemento que hay que establecer es la clase Java de la acción. La definición de punto de extensión especifica que una acción debe implementar  IWorkbenchWindowActionDelegate.   El PDE puede ser de ayuda puesto que conoce esta información a partir del esquema.

  1. Pulse en la propiedad clase para ponerla en modalidad de edición. Seleccione el botón para abrir el cuadro de diálogo del editor de celdas.
  2. Seleccione el botón de selección para crear una clase nueva.
  3. Pulse el botón Examinar para elegir el contenedor de origen y elija el "conector XYZ".
  4. Cambie el nombre de la clase por "SampleAction".

Antes de que pulse Finalizar, el cuadro de diálogo debería parecerse a este:

Editor de atributos Java

Al finalizar, se generará la clase nueva basada en la interfaz necesaria (con una implementación de un apéndice por cada método abstracto). Además, el valor de la propiedad clase se establecerá al nombre de la clase nueva. Además, el asistente abrirá por omisión la clase Java nueva para editarla. Puede buscar el método "run" y añadir la sentencia siguiente:

   System.out.println("¡Hola, mundo del PDE!");

Guarde el código fuente nuevo y cierre el editor Java. Luego, vuelva a la página Extensiones del editor de manifiestos y guárdelo.

Continuaremos con este ejemplo al ejecutar el conector.

Copyright IBM Corporation y otros 2000, 2002