Existen dos formas posibles de extensión de producto: estática y dinámica. Las extensiones de producto estáticas contienen directamente toda la información relevante acerca del producto. Las extensiones de producto dinámicas identifican una clase
(IProductProvider) que es capaz de definir uno o varios productos cuando se consulta.
<!ELEMENT extension ((product | provider))>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
<!ELEMENT product (property*)>
<!ATTLIST product
application CDATA #REQUIRED
name CDATA #REQUIRED
description CDATA #IMPLIED>
<!ELEMENT property EMPTY>
<!ATTLIST property
name CDATA #REQUIRED
value CDATA #REQUIRED>
detalles de un proveedor de productos
<!ELEMENT run EMPTY>
<!ATTLIST run
class CDATA #REQUIRED>
A continuación figura un ejemplo de declaración de producto dinámica (proveedor de productos):<extension id=
"coolProduct"
point=
"org.eclipse.core.runtime.products"
>
<product name=
"%coolName"
application=
"coolApplication"
description=
"%coolDescription"
>
<property name=
"windowImage"
value=
"window.gif"
/>
<property name=
"aboutImage"
value=
"image.gif"
/>
<property name=
"aboutText"
value=
"%aboutText"
/>
<property name=
"appName"
value=
"CoolApp"
/>
<property name=
"welcomePage"
value=
"$nl$/welcome.xml"
/>
<property name=
"preferenceCustomization"
value=
"plugin_customization.ini"
/>
</product>
</extension>
<extension id=
"coolProvider"
point=
"org.eclipse.core.runtime.products"
>
<provider>
<run class=
"com.example.productProvider"
/>
</provider>
</extension>
IProduct. Las extensiones de producto dinámicas deben identificar un implementador de IProductProvider. Consulte
org.eclipse.ui.branding.IProductConstants para obtener detalles acerca de las propiedades de producto relacionadas con el sello personal definidas por la UI de Eclipse.
IProductProvider.
Copyright (c) 2004, 2005 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 (Eclipse Public
License) v1.0 que acompaña a esta distribución, y está disponible en
http://www.eclipse.org/legal/epl-v10.html