Fábricas de elementos

Identificador: org.eclipse.ui.elementFactories

Descripción: este punto de extensión se utiliza para añadir fábricas de elementos al entorno de trabajo. La fábrica de elementos permite crear de nuevo objetos IAdaptable que persisten durante la conclusión del entorno de trabajo.

Como ejemplo, la fábrica de elementos se utiliza para dar persistencia a la entrada de un editor. La entrada de un editor debe implementar org.eclipse.ui.IEditorInput. El ciclo de vida de una entrada IEditorInput dentro de un editor tiene varias fases.

  1. La entrada inicial de un editor se pasa durante la creación del editor.
  2. En el momento de la conclusión, se captura el estado del entorno de trabajo. En este proceso, el entorno de trabajo creará un recordatorio de cada editor abierto y de su entrada. La entrada se guarda como recordatorio de dos componentes que contienen un ID de fábrica y los datos primitivos que se necesiten para crear de nuevo el elemento cuando se inicie. Para obtener más información consulte la documentación relacionada con org.eclipse.ui.IPersistableElement.
  3. En el momento de iniciarse, se lee el estado del entorno de trabajo, y se vuelven a crear los editores de la sesión anterior. En este proceso, el entorno de trabajo creará de nuevo el elemento de entrada de cada editor abierto. Para ello, correlacionará el ID de fábrica original del elemento de entrada con una clase de fábrica concreta definida en el registro. Si existe una correlación y es válida la clase de fábrica, se crea una instancia de la clase de fábrica. A continuación, el entorno de trabajo solicita a la fábrica que cree de nuevo el elemento original a partir de los datos primitivos que queden en el recordatorio. La interfaz IAdaptable resultante se convierte temporalmente en IEditorInput y se pasa al nuevo editor.
 Códigos XML de configuración:

   <!ELEMENT factory EMPTY>
   <!ATTLIST factory
      id     CDATA #REQUIRED
      class  CDATA #REQUIRED
   >

Ejemplos:

A continuación podemos observar un ejemplo de extensión de fábrica de elementos:

   <extension
        point = "org.eclipse.ui.elementFactories">
        <factory
           id ="com.xyz.ElementFactory"
           class="com.xyz.ElementFactory">
        </factory>
    </extension>

Información sobre las API: el valor del atributo class debe ser un nombre totalmente calificado de una clase que implemente org.eclipse.ui.IElementFactory. Una instancia de esta clase debe crear un objeto IAdaptable a partir de un recordatorio del entorno de trabajo.

Implementación suministrada: el entorno de trabajo proporciona una fábrica de IResource. Deben añadirse fábricas adicionales para crear de nuevo otros tipos de IAdaptable que se hallan habitualmente en otros modelos de objetos, como el modelo Java.

Copyright IBM Corporation y otros 2000, 2002.