Inicializadores

O objetivo principal de um inicializador é identificar um escopo. No entanto, ele é mais do que apenas um identificador exclusivo. Ele aponta para a classe Java que fornece informações de inicialização para o escopo. Para criar um objeto a partir do ponto de extensão org.eclipse.core.component.types, o Eclipse deve construir manualmente um inicializador do tipo apropriado. Isso permite que o Eclipse transmita o contexto requerido para componentes de fora da estrutura do componente. Qualquer componente pode depender do inicializador para seu escopo, para acessar esse contexto. Atualmente, a maioria dos inicializadores fornecidos pelo workbench possui uma interface pública vazia, portanto, a maioria dos clientes ainda não deseja fazer isso.

Herança é levada em consideração entre tipos de inicializadores. O registro de um tipo de componente em uma classe-base do inicializador também afetará o inicializador e todas as suas subclasses. Os inicializadores não podem ser interfaces, portanto, apenas a herança única é possível. Por exemplo, uma interface registrada em org.eclipse.core.component.ExtensionInitializer deve ser visível a partir de uma parte e de seu site, pois a org.eclipse.core.component.ExtensionInitializer é uma classe-base para os inicializadores da parte e do site.

O workbench fornece os seguintes tipos de inicializadores:

Inicializador
Classe-base
Utilizado para
org.eclipse.core.component.ExtensionInitializer
none
Dependências utilizadas por qualquer componente criado a partir de um ponto de extensão.
org.eclipse.ui.part.PartInitializer
org.eclipse.core.component.ExtensionInitializer Interfaces que podem ser implementadas por uma parte.
org.eclipse.ui.part.SiteInitializer org.eclipse.core.component.ExtensionInitializer Componentes disponíveis de um site (como coisas que uma parte pode obter em seu construtor).
org.eclipse.ui.part.SiteMultiplexerInitializer
org.eclipse.ui.part.SiteInitializer Dependências que se aplicam apenas a sites dentro de um multiplexador (utilizado para substituir a implementação do componente padrão fornecida por um site).