Inizializzatori

Lo scopo principale di un'inizializzatore è di identificare un ambito. Tuttavia si tratta di qualcosa in più di un identificativo univoco. Fa riferimento alla classe Java che fornisce le informazioni di inizializzazione allo scopo. Per creare un oggetto dal punto di estensione org.eclipse.core.component.types, Eclipse deve costruire manualmente un inizializzatore del tipo appropriato. Questo consente ad Eclipse di trasmettere il contesto richiesto ai componenti dall'esterno del framework dei componenti. Ogni componente può dipendere dall'inizializzatore per accedere al contesto. Attualmente la maggior parte degli inizializzatori forniti dal workbench hanno un'interfaccia pubblica vuota, quindi la maggior parte dei client non utilizzando ancora questa funzione.

Tra i tipi di inizializzatore si considera l'ereditarietà. La registrazione di un tipo di componente in una classe di base dell'inizializzatore, influenza anche l'inizializzatore e tutte le rispettive classi secondarie. Gli inizializzatori non possono essere interfacce, così è possibile un singolo tipo di ereditarietà. Ad esempio, un interfaccia registrata su org.eclipse.core.component.ExtensionInitializer sarà visibile sia da una parte che dal rispettivo sito perché org.eclipse.core.component.ExtensionInitializer è una classe di base sia per la parte che per gli inizializzatori del sito.

Il workbench fornisce i seguenti tipi di inizializzatore:

Inizializzatore
Classe di base
Utilizzato per
org.eclipse.core.component.ExtensionInitializer
none
Dipendenze utilizzate da qualsiasi componente creato da un punto di estensione.
org.eclipse.ui.part.PartInitializer
org.eclipse.core.component.ExtensionInitializer Interfacce che possono essere implementate da una parte.
org.eclipse.ui.part.SiteInitializer org.eclipse.core.component.ExtensionInitializer Componenti disponibili da un sito (ad esempio, come elementi che una parte può prendere dal proprio costruttore).
org.eclipse.ui.part.SiteMultiplexerInitializer
org.eclipse.ui.part.SiteInitializer Dipendenze valide solo per il sito interno a un multiplexer (utilizzato per sovrascrivere l'implementazione componenti predefinita utilizzata da un sito).