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. Una fábrica de elementos permite crear de nuevo objetos IAdaptable que persisten durante la conclusión del entorno de trabajo.

Por ejemplo, la fábrica de elementos se utiliza para que la información de entrada del editor sea persistente. La información de entrada del editor debe implementar org.eclipse.ui.EditorInput. El ciclo de vida de IEditorInput dentro de un editor tiene diversas 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. Durante el inicio, se lee el estado del entorno de trabajo y vuelven a crearse los editores de la sesión anterior. En este proceso, el entorno de trabajo creará de nuevo el recordatorio de entrada para cada editor abierto. Para ello, correlacionará el ID de la fábrica original del elemento de entrada con una clase de fábrica determinada definida en el registro. Si existe una correlación y la clase de fábrica es válida, se creará una instancia de la clase de fábrica. A continuación, el entorno de trabajo solicita la fábrica a fin de volver a crear el elemento original a partir de los datos primitivos restantes del recordatorio. La clase IAdaptable resultante se convierte temporalmente a IEditorInput y se pasa al editor nuevo.

Códigos XML de configuración:

   <!ELEMENT extension (factory*)>

   <!ATTLIST extension
     point CDATA #REQUIRED
     id    CDATA #IMPLIED
     name  CDATA #IMPLIED
   >

   <!ELEMENT factory EMPTY>

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

Ejemplos: a continuación figura 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 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 (c) 2002 IBM Corporation y otros. Reservados todos los derechos. Este programa y sus materiales adjuntos están disponibles bajo los términos de la licencia pública común (Common Public License) v1.0 que acompaña a esta distribución, y está disponible en http://www.eclipse.org/legal/cpl-v10.html