Inicializadores

El propósito principal de un inicializador consiste en identificar un ámbito. Sin embargo, es algo más que sólo un identificador exclusivo. Apunta a la clase Java que proporciona información de inicialización al ámbito. Para crear un objeto a partir del punto de extensión org.eclipse.core.component.types, Eclipse debe construir manualmente un inicializador del tipo adecuado. Esto permite a Eclipse pasar el contexto necesario a los componentes desde fuera de la infraestructura de componentes. Se permite a cualquier componente depender del inicializador para su ámbito con el fin de acceder a este contexto. Actualmente, la mayoría de los inicializadores proporcionados por el entorno de trabajo tiene una interfaz pública vacía, por lo que la mayoría de clientes no querrían hacerlo todavía.

La herencia se tiene en cuenta entre tipos de inicializadores. El registro de un tipo de componente en una clase básica de un inicializador también afectará al inicializador y todas sus subclases. Los inicializadores no pueden ser interfaces, por lo que una sola herencia es posible. Por ejemplo, una interfaz registrada en org.eclipse.core.component.ExtensionInitializer estaría visible desde un componente y desde su sitio, ya que org.eclipse.core.component.ExtensionInitializer es una clase básica para los inicializadores de componente y de sitio.

El entorno de trabajo proporciona los siguientes tipos de inicializador:

Inicializador
Clase básica
Utilizado para
org.eclipse.core.component.ExtensionInitializer
ninguna
Dependencias utilizadas por cualquier componente creado a partir de un punto de extensión.
org.eclipse.ui.part.PartInitializer
org.eclipse.core.component.ExtensionInitializer Interfaces que pueden ser implementadas por un componente.
org.eclipse.ui.part.SiteInitializer org.eclipse.core.component.ExtensionInitializer Componentes disponibles desde un sitio (como, por ejemplo, cosas que un componente puede tomar en su constructor).
org.eclipse.ui.part.SiteMultiplexerInitializer
org.eclipse.ui.part.SiteInitializer Dependencias que sólo se aplican a un sitio situado dentro de un multiplexor (se utiliza para alterar temporalmente la implementación de componentes por omisión proporcionada por un sitio).