Participantes de Procura Lucene

org.eclipse.help.base.luceneSearchParticipants

3.2

Este ponto de extensão deve ser utilizado para incluir conteúdo de documento no índice de procura Lucene. Há dois casos em que você gostaria de incluir um participante de procura:
  1. Para indexar documentos registrados no TOC do sistema de ajuda que não são do formato HTML (por exemplo, XML). Nesse caso, o participante deve declarar as extensões de arquivo que ele pode manipular. Ele será chamado para indexar cada documento de correspondência. Nesse caso, o participante tem o escopo de plug-in.
  2. Para indexar documentos fora do TOC do sistema de ajuda. Nesse caso, será fornecida ao participante uma oportunidade para indexar ao mesmo tempo todos os documentos que ele conhece. Além disso, será delegada ao participante a tarefa de abrir o resultado da procura porque o sistema de ajuda não saberá como abrir os documentos fora do TOC. Nesse caso, o participante tem escopo global.

Os participantes da procura estão associados ao plug-in no qual a extensão aparece. Para reutilizar o participante em outros plug-ins, a ligação deve ser utilizada para fazer referência a eles. Essa estratégia impede um plug-in de impor seu participante no produto inteiro relativamente às extensões de arquivo nas quais ele foi registrado. Incluindo uma referência explícita, o plug-in declara que ele permite que o participante da procura referencial manipule a indexação de documentos com essas extensões. Para documentos que não fazem parte do TOC, esse tipo de perigo não existe. Por essa razão, eles são globais e a ligação não deverá ser utilizada.

<!ELEMENT extension (searchParticipant | binding)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT searchParticipant (participant?)>

<!ATTLIST searchParticipant

id          CDATA #REQUIRED

name        CDATA #IMPLIED

icon        CDATA #IMPLIED

participant CDATA #IMPLIED

extensions  CDATA #IMPLIED

headless    (true | false) "false">


<!ELEMENT participant (parameter*)>

<!ATTLIST participant

class CDATA #IMPLIED>


<!ELEMENT parameter EMPTY>

<!ATTLIST parameter

name  CDATA #REQUIRED

value CDATA #REQUIRED>


<!ELEMENT binding EMPTY>

<!ATTLIST binding

participantId CDATA #IMPLIED>


Segue uma amostra de uso do ponto de extensão:

  

<extension point=

"org.eclipse.help.base.luceneSearchParticipant"

>

<searchParticipant id=

"org.eclipse.myGlobalParticipant"

name=

"Participante Global"

icon=

"icons/mydoc.gif"

participant=

"org.eclipse.myPlugin.myPackage.MyGlobalParticipant"

headless=

"true"

/>

<searchParticipant id=

"org.eclipse.myXYZParticipant"

extensions=

"xyz"

participant=

"org.eclipse.myPlugin.myPackage.MyXYZParticipant"

/>

</extension>

A classe fornecida do participante da procura deve estender a classe abstrata org.eclipse.help.search.LuceneSearchParticipant.

O sistema de ajuda fornece o participante da procura para arquivos XHTML (extensão xhtml). Plug-ins que têm documentos XHTML dinâmicos como parte do TOC devem ser ligados a esse participante utilizando o elemento ligação e org.eclipse.help.base.xhtml como o id do participante de destino.