Produtos

org.eclipse.core.runtime.products

3.0

Os produtos são a unidade de homologação de Eclipse. As extensões de produtos são facultadas por plug-ins que pretendem definir um ou mais produtos. Tem de existir um produto por extensão, já que o id de extensão é utilizado no processamento e identificação do produto.

Existem duas formas possíveis de extensão de produto: estática e dinâmica. As extensões de produto estáticas contêm directamente todas as informações relevantes relativas ao produto. As extensões de produto dinâmicas identificam uma classe (uma IProductProvider) que é capaz de definir um ou mais produtos, quando consultada.

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

detalhes de um fornecedor de produtos



<!ELEMENT run EMPTY>

<!ATTLIST run

class CDATA #REQUIRED>


De seguida é apresentado um exemplo de uma declaração de produto estática:

   

<extension id=

"coolProduct"

point=

"org.eclipse.core.runtime.products"

>

<product name=

"%coolName"

application=

"coolApplication"

description=

"%coolDescription"

>

<property name=

"windowImages"

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>

De seguida é apresentado um exemplo de uma declaração de aplicação de produto dinâmica (fornecedor de produtos):

   

<extension id=

"coolProvider"

point=

"org.eclipse.core.runtime.products"

>

<provider>

<run class=

"com.example.productProvider"

/>

</provider>

</extension>

As extensões de produto estáticas facultadas aqui são representadas no tempo de execução com instâncias-objecto de IProduct. As extensões de produto dinâmicas têm de identificar um implementador de IProductProvider. Consulte org.eclipse.ui.branding.IProductConstants para obter detalhes relativos às propriedades de produto relacionadas com homologação, definidas pela UI de Eclipse.

Não são facultadas quaisquer implementações de IProductProvider.