Søkemotorer som er definert her, vises ikke automatisk som forente søkedeltakere før de må knyttes til motorprodukter, med
mindre det ikke er definert et productId
-attributt. Av motorene med
slik definisjon er det bare de som er knyttet til et bestemt produkt, som
vises når produktet kjører.
Søkemotorer kan enkelt danne en URL og oppgi bare ett treff som inneholder denne URLen som href. Populære søkemotorer som API-støtte krever lisens for, kan på denne måten plugges inn. I motsatt ende kan søkemotorer kommunisere med serveren og motta enkelttreff med informasjon om for eksempel etikett, href og en kort beskrivelse. På denne måten finner lokale søkemotorer treff.
Uavhengig av søkemetode kan det oppgis forskjellige innstillinger for motorens søkeomfang via JFace-preferansesidene. Disse sidene vises når det klikkes på linken "Avanserte innstillinger" i Hjelp-visningen. I tillegg til rotpreferansesider som er definert med motoren, kan det plugges inn flere underliggende preferansesider for mer avanserte innstillinger.
Innstillingene for omfang lastes inn og lagres ved hjelp av IPreferenceStore
-objekter.
Alle motorenes omgfangsinnstillinger grupperes sammen i et navngitt omfangssett.
Når dette åpnes, brukes det angitte standardomfanget (Default), men brukere kan
definere flere omfangssett og veksle mellom dem.
Siden støtte for forent søking er en del av plugin-modulen
org.eclipse.help.base
, må det en factory til for å opprette
søkeomfangsobjekter fra dataene i preferanselageret. Klienter som plugger inn preferansesider for omfang må også plugge inn
omfang-factories.
Motorer som er definert i dette utvidelsespunktet, vises som standard ikke i brukergrensesnittet. Derimot vises en konkret forekomst av en søkemotor som kan endres individuelt. Produkter kan forhåndskonfigurere hjelpesystemet med en rekke forekomster av de registrerte motortypene, muligens ved hjelp av parametere som oppgir ønsket utføring. Brukere kan dessuten legge til egne forekomster av de registrerte motorene og konfigurere dem fritt.
<!ELEMENT extension (engineType* , engine*)>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
<!ELEMENT engineType (description? , subpage*)>
<!ATTLIST engineType
id CDATA #REQUIRED
label CDATA #REQUIRED
icon CDATA #IMPLIED
class CDATA #REQUIRED
pageClass CDATA #IMPLIED
scopeFactory CDATA #IMPLIED>
definerer en bestemt type av en søkemotor. Søkemotortyper kan brukes til å opprette konkrete motorforekomster enten av brukeren eller forhåndslastet av produktet. For å være nyttige må motortyper være konfigurerbare slik at flere motorer kan opprettes ved hjelp av en enkelt motortype.
org.eclipse.help.search.ISearchEngine
. Klassen er ansvarlig for søking basert på en gitt spørring og et gitt omfang.org.eclipse.help.ui.RootScopePage
. Denne siden inneholder hovedbryteren for søkemotoren, og den brukes vanligvis til å begrense søkeomfanget for motoren.org.eclipse.help.ui.ISearchScopeFactory
. Factory er ansvarlig for oppretting av ISearchScope-objekter fra innstillinger som er lagret i klassen IPreferenceStore
. Hvis pageClass
er oppgitt, må omfangs-factory også være oppgitt.<!ELEMENT description (#PCDATA)>
en kort beskrivelse av søkemotoren
<!ELEMENT subpage EMPTY>
<!ATTLIST subpage
id CDATA #REQUIRED
label CDATA #REQUIRED
class CDATA #IMPLIED
category CDATA #REQUIRED>
en underordnet side for rotomfangets preferanseside som er definert i engine
-elementet. Hvis motorattributtet pageClass
ikke er definert, blir delsider ignorert.
org.eclipse.help.ui.ISearchScopePage
.<!ELEMENT engine (description? , param*)>
<!ATTLIST engine
productId CDATA #IMPLIED
engineTypeId CDATA #REQUIRED
enabled (true | false)
label CDATA #IMPLIED
id CDATA #REQUIRED>
Oppgir en konkret forekomst av en bestemt søkemotortype. Forekomster kan bindes til produktet slik at de bare vises når dette produktet er aktivt. Motorer kan ha sin egen etikett og beskrivelse. Hvis det ikke er oppgitt, brukes motortypens data. Og endelig definerer motortypen et gyldig sett av parametere som kan sendes til den for å konfigurere den. Motorer kan oppgi verdier for disse parameterne.
org.eclipse.core.runtime.Platform.getProduct()
). Hvis det ikke er oppgitt, vises motoren for alle produktene.true
, blir motoren først aktivert. Brukerne kan
overstyre denne verdien i brukergrensesnittet.<!ELEMENT param EMPTY>
<!ATTLIST param
name CDATA #REQUIRED
value CDATA #REQUIRED>
en valgfri parameter som brukes til å konfigurere denne forekomsten av søkemotortypen. Gyldige parametere defineres av motortypen.
<extension point=
"org.eclipse.help.ui.searchEngine"
>
<engineType scopeFactory=
"com.example.xyz.XYZScopeFactory"
label=
"XYZ Search"
class=
"com.example.xyz.search.XYZSearch"
icon=
"icons/etool16/xyzsearch.gif"
pageClass=
"com.example.xyz.search.XYZSearchPage"
id=
"com.example.xyz.XYZSearch"
>
<description>
Instances of XYZ Search search the XYZ site.</description>
</engineType>
<engine enabled=
"true"
engineTypeId=
"com.example.xyz.search.XYZSearch"
id=
"com.example.xyz.XYZSearch"
label=
"XYZ Search"
>
</engine>
<engine enabled=
"true"
engineTypeId=
"org.eclipse.help.ui.web"
id=
"org.eclipse.sdk.Eclipse"
label=
"%search.Eclipse.label"
>
<description>
%search.Eclipse.desc</description>
<param name=
"url"
value=
"http://eclipse.org/search/search.cgi?q={expression}&ul=&ps=20&m=all"
>
</param>
</engine>
</extension>
class
for elementet engineType
må oppgi et fullt kvalifisert navn navn på
klassen som implementerer org.eclipse.help.search.ISearchEngine
. Attributtet pageClass
må oppgi et fullt kvalifisert navn på klassen som utvider
org.eclipse.help.ui.RootScopePage
. Attributtet scopeFactory
må oppgi et fullt kvalifisert navn på klassen som implementerer org.eclipse.help.ui.ISearchScopeFactory
.
Attributtet class
for elementet subpage
må oppgi et fullt kvalifisert navn på en klasse som implementerer
org.eclipse.help.ui.ISearchScopePage
.
Produkter kan opprette konkrete forekomster av informasjonssenter- og web-søk ved å bruke motor-IDen og de nødvendige parameterne.
Informasjonssenterets motortype
har motor-IDen org.eclipse.help.ui.infoCenter
, og godtar en parameter-url
som peker på den eksterne serveren der informasjonssenteret er installert. Resultater vises
på samme måte som de lokale hjelperesultatene.
Motortypen for web-søk
har motor-IDen org.eclipse.help.ui.web
, og godtar en parameter-url
som representerer
en konkret søkespørring med den faktiske søkestrengen erstattet med et erstatningssymbol '{expression}', som i
det følgende eksempelet:
http://eclipse.org/search/search.cgi?q={expression}&ul=&ps=20&m=allWeb-søkeresultatene vises som en link som åpner nettleseren med søkestrenge erstattet i
url
-parameteren.
Copyright (c) 2000, 2005 IBM Corporation and others.
All rights reserved. This program and the accompanying materials are made
available under the terms of the Eclipse Public License v1.0 which accompanies
this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html