Produkty

org.eclipse.core.runtime.products

3.0

Produkty to jednostka oznaczania marką w środowisku Eclipse. Rozszerzenia produktów są dostarczane przez moduły dodatkowe chcące zdefiniować jeden lub więcej produktów. Na każde rozszerzenie musi przypadać jeden produkt, ponieważ identyfikator rozszerzenia służy do przetwarzania i identyfikowania produktu.

Rozszerzenie produktu może występować w jednej z dwóch postaci: statycznej i dynamicznej. Statyczne rozszerzenia produktów zawierają bezpośrednio wszystkie potrzebne informacje o produkcie. Dynamiczne rozszerzenia produktów identyfikują klasę (IProductProvider) umożliwiającą zdefiniowanie jednego lub więcej produktów po otrzymaniu zapytania.

<!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>


<!ELEMENT provider (run)>

Szczegółowe informacje o dostawcy produktu.



<!ELEMENT run EMPTY>

<!ATTLIST run

class CDATA #REQUIRED>


Poniżej przedstawiono przykładową statyczną deklarację produktu:

   

<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>

Poniżej przedstawiono przykładową dynamiczną deklarację produktu (dostawcy produktu).

   

<extension id=

"coolProvider"

point=

"org.eclipse.core.runtime.products"

>

<provider>

<run class=

"com.example.productProvider"

/>

</provider>

</extension>

Statyczne rozszerzenia produktów udostępnione w tym miejscu są reprezentowane w środowisku wykonawczym przez instancje interfejsu IProduct. Dynamiczne rozszerzenia produktów muszą identyfikować implementator interfejsu IProductProvider. Szczegółowe informacje o właściwościach produktu związanych z marką, które są definiowane przez interfejs użytkownika środowiska Eclipse, można znaleźć w opisie interfejsu org.eclipse.ui.branding.IProductConstants.

Brak implementacji klasy IProductProvider.