Az itt meghatározott keresőmotorok nem jelennek meg automatikusan
egyesített keresési résztvevőként, amíg a motor termékkötése nincs
létrehozva, kivéve, ha a productId
attribútum
meghatározatlanul van hagyva. Azon motorok közül, amelyek meghatározzák,
csak egy bizonyos termékhez kötöttek jelennek meg, amikor a termék
fut.
A keresőmotorok egyszerűen össze tudnak állítani egy URL címet és egyetlen találatot biztosítanak, amely az URL címet href elemként tartalmazza. Azon népszerű keresőmotorok, melyek API támogatása licencet igényel, csatlakoztathatóak ezzel a módszerrel. A spektrum másik végén lévő keresőmotorok képesek kommunikálni a kiszolgálóval és egyedi találatokat fogadni olyan információkkal, mint címke, href, rövid leírás, pontszám, stb. Helyi keresőmotor ezzel a módszerrel állíthatja elő a találatokat.
A keresési mechanizmustól függetlenül a motorok változatos keresési hatókör beállításokat biztosíthatnak JFace beállításoldalak használatával. Ezek az oldalak jelennek meg a Súgónézet 'További beállítások' hivatkozásának követésekor. A motorral meghatározott gyökér beállításoldalak kiegészítéseként, további beállítás aloldalak csatlakoztathatóak további fejlett beállítások eléréséhez.
A hatókör beállításai IPreferenceStore
objektumok
használatával kerülnek betöltésre és tárolásra. Az összes motor
hatókörbeállításai együtt csoportosítva vannak egy
hatókörhalmazban. Az első megnyitásakor létrejön az alapértelmezett
hatókörhalmaz ('Alapértelmezett'), de a felhasználók meghatározhatnak
további hatókörhalmazokat és váltogathatnak köztük.
Mivel az egyesített keresés támogatása a
org.eclipse.help.base
bedolgozó része, egy gyár szükséges a
keresési hatókörobjektumok létrehozásához a beállítástárolóban lévő
adatokból. A hatókörbeállítás-oldalakat csatlakoztató ügyfeleknek
hatókör gyárakat is szükséges csatlakoztatniuk.
Az ebben a kiterjesztési pontban meghatározott motorok alapértelmezésben nem jelennek meg a felhasználói felületen. Itt a keresőmotor egy konkrét példánya jelenik meg, ami egyedileg módosítható. A termékek előzetesen konfigurálhatják a súgórendszert a bejegyzett motortípusok számos példányával, esetleg paraméterezve, hogy a kívánt módon teljesítsenek. Ezenkívül a felhasználók felvehetik a bejegyzett motorok saját példányait és kedvük szerint állíthatják be azokat.
<!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>
Egy adott típusú keresőmotort ad meg. A keresőmotor-típus használható egy konkrét motorpéldány létrehozására a felhasználó által vagy a termék által előre betölthető. Hogy hasznosak legyenek, a motortípusoknak konfigurálhatónak kell lenniük, így egy motortípus felhasználásával számos motor létrehozható.
org.eclipse.help.search.ISearchEngine
elemet megvalósító osztály teljes képzésű neve.
Az osztály felelős a keresésért egy adott lekérdezés és hatókör alapján. org.eclipse.help.ui.RootScopePage
osztályt kiterjesztő osztály teljes képzésű neve.
Ez az oldal tartalmazza az elsődleges kapcsolót a keresőmotorhoz és jellemzően a motor keresési hatókörét leszűkítő
felületi elemeket működteti. org.eclipse.help.ui.ISearchScopeFactory
elemet megvalósító osztály teljes képzésű neve. A gyár felelős az ISearchScope objektumok létrehozásáért az IPreferenceStore
osztályban tárolt beállítások alapján.
Ha a pageClass
meg van adva, akkor a hatókör gyárat szintén meg kell adni. <!ELEMENT description (#PCDATA)>
a keresőmotor rövid leírása
<!ELEMENT subpage EMPTY>
<!ATTLIST subpage
id CDATA #REQUIRED
label CDATA #REQUIRED
class CDATA #IMPLIED
category CDATA #REQUIRED>
az engine
elemben megadott fő hatókör-beállításoldal leszármazott oldala.
Ha a pageClass
motorattribútum nincs megadva, akkor az
aloldalak figyelmen kívül maradnak.
org.eclipse.help.ui.ISearchScopePage
felületet megvalósító osztály teljes képzésű neve. <!ELEMENT engine (description? , param*)>
<!ATTLIST engine
productId CDATA #IMPLIED
engineTypeId CDATA #REQUIRED
enabled (true | false)
label CDATA #IMPLIED
id CDATA #REQUIRED>
Egy adott keresőmotor-típus konkrét példányát adja meg. A példány a termékhez köthető annak érdekében, hogy csak akkor jelenjen meg, ha a termék aktív. A motor saját szinttel és leírással rendelkezhet. Ha nincs megadva, akkor a motortípus adatai kerülnek felhasználásra. Végül minden motortípus megad egy érvényes paraméterhalmazt, amelyet a beállítás érdekében át lehet neki adni. A motorok megadhatják ezen paraméterek értékeit.
org.eclipse.core.runtime.Platform.getProduct()
megadja). Ha nincs megadva, akkor a motor minden termékhez megjelenik. true
, akkor a motor kezdetben engedélyezett lesz. A felhasználók ezt az értéket a felhasználói felületen újradefiniálhatják. <!ELEMENT param EMPTY>
<!ATTLIST param
name CDATA #REQUIRED
value CDATA #REQUIRED>
a keresőmotor-típus adott példányának beállítására használt elhagyható paraméter. Az érvényes paramétereket a motortípus határozza meg.
<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>
Az XYZ keresés példányai az XYZ hely keresésére.</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>
engineType
elem class
attribútumának az org.eclipse.help.search.ISearchEngine
elemet megvalósító osztály teljes képzésű nevét kell biztosítania. A pageClass
attribútumnak az org.eclipse.help.ui.RootScopePage
osztályt kiterjesztő osztály teljes képzésű nevét kell biztosítania. A scopeFactory
attribútumnak az org.eclipse.help.ui.ISearchScopeFactory
elemet megvalósító osztály teljes képzésű nevét kell biztosítania.
A subpage
elem class
attribútumának az
org.eclipse.help.ui.ISearchScopePage
elemet megvalósító
osztály teljes képzésű nevét kell biztosítania.
A termékek létre tudják hozni az InfoCenter és a webes keresés konkrét példányait a motorazonosító és a szükséges paraméterek használatával.
Az InfoCenter motortípus org.eclipse.help.ui.infoCenter
motorazonosítóval rendelkezik és egy url
paramétert fogad el.
Ez a paraméter a távoli kiszolgálóra mutat, amelyen az InfoCenter telepítve van. A
találatok ugyanúgy kerülnek megjelenítésre, mint a helyi
súgótalálatok.
A webes keresőmotor org.eclipse.help.ui.web
motorazonosítóval
rendelkezik és egy url
paramétert fogad el, amely egy konkrét
keresési lekérdezést ábrázol. Ebben a lekérdezésben az aktuális keresési
karaktersorozat '{expression}' szimbólummal lesz helyettesítve az alábbi példában látható módon:
http://eclipse.org/search/search.cgi?q={expression}&ul=&ps=20&m=allA webes keresési találatok hivatkozásként jelennek meg, amely megnyitja a webböngészőt az
url
paraméterben lévő keresési karaktersorozat helyettesítésével.
Copyright (c) 2000, 2005 IBM Corporation és mások.
Minden jog fenntartva. Jelen program és annak kísérőanyagai a csomaghoz
tartozó, illetve a
http://www.eclipse.org/legal/epl-v10.html
címen is elérhető Eclipse Public License 1.0 verziójának hatálya alatt
kerültek közzétételre.