I generatori sono configurati in base ai singoli progetti e sono eseguiti automaticamente quando le risorse del progetto sono modificate. In quanto tali, i generatori devono essere rapidi e in scala rispetto alla quantità di modifiche apportate piuttosto che al numero di risorse presenti nel progetto. Questo implica che i generatori sono in grado di aggiornare lo "stato della generazione" in maniera incrementale.
Il punto di estensione dei generatori consente a chi scrive un generatore di registrarne l'implementazione con un nome simbolico da utilizzare dall'interno dello spazio di lavoro per trovare ed eseguire generatori. Il nome simbolico rappresenta l'id dell'estensione del generatore. Durante la definizione dell'estensione di un generatore, si consiglia all'utente di includere un valore significativo per l'attributo "name", che identifica il generatore.
<!ELEMENT extension (builder)>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
<!ATTLIST builder
hasNature (true | false) >
<!ATTLIST run
class CDATA #REQUIRED>
<!ELEMENT parameter EMPTY>
<!ATTLIST parameter
name CDATA #REQUIRED
value CDATA #REQUIRED>
Se questa estensione è stata definita in un plugin con identificativo "com.xyz.coolplugin", il nome completo del generatore sarà "com.xyz.coolplugin.coolbuilder".<extension id=
"coolbuilder"
name=
"Cool Builder"
point=
"org.eclipse.core.resources.builders"
>
<builder hasNature=
"false"
>
<run class=
"com.xyz.builders.Cool"
>
<parameter name=
"optimize"
value=
"true"
/>
<parameter name=
"comment"
value=
"Produced by the Cool Builder"
/>
</run>
</builder>
</extension>
Copyright (c) 2002, 2004 IBM Corporation e altri.
Tutti i diritti riservati. Questo programma e il materiale di accompagnamento
sono disponibili secondo i termini della Common Public License v1.0 che sono
distribuiti con il prodotto, e disponibili all'indirizzo
http://www.eclipse.org/legal/cpl-v10.html