Mapa webu (site) aktualizačního serveru
Výchozí aktualizační server Eclipse je libovolný server s přístupem URL. Výchozí
implementace předpokládá server s pevným rozvržením. Obsah serveru (co se týče
dostupných funkcí a modulů plug-in) je popsán v souboru mapy webu (site)
site.xml. Tento soubor lze udržovat ručně nebo je možné jej vytvářet dynamicky daným serverem.
Mapa webu (site)
URL aktualizačního serveru lze určit jako úplnou adresu URL k souboru mapy webu (site)
nebo URL cesty k adresáři obsahujícího soubor mapy webu (site) (podobné zpracování souboru index.html). Formát mapy webu (site) site.xml definuje následující dtd:
<?xml encoding="ISO-8859-2"?>
<!ELEMENT site (description?, feature*, archive*, category-def*)>
<!ATTLIST site
type
CDATA #IMPLIED
url
CDATA #IMPLIED
mirrorsURL CDATA #IMPLIED
>
<!ELEMENT description (#PCDATA)>
<!ATTLIST description
url
CDATA #IMPLIED
>
<!ELEMENT feature (category*)>
<!ATTLIST feature
type
CDATA #IMPLIED
id
CDATA #IMPLIED
version
CDATA #IMPLIED
url
CDATA #REQUIRED
patch
(false | true) false
os CDATA #IMPLIED
nl CDATA #IMPLIED
arch CDATA #IMPLIED
ws
CDATA #REQUIRED
>
<!ELEMENT archive EMPTY>
<!ATTLIST archive
path
CDATA #REQUIRED
url
CDATA #REQUIRED
>
<!ELEMENT category EMPTY>
<!ATTLIST category
name
CDATA #REQUIRED
>
<!ELEMENT category-def (description?)>
<!ATTLIST category-def
name
CDATA #REQUIRED
label
CDATA #REQUIRED
>
Následují definice prvků a atributů:
- <site> - Definuje mapu webu (site)
- type - Volitelná specifikace typu webu (site). Hodnota se týká typového řetězce
registrovaného prostřednictvím bodu rozšíření instalace rámcového
systému. Není-li typ určen, bude považován za výchozí typ webu (site) modulu
Eclipse (jak je specifikován v tomto dokumentu).
- url - Volitelná adresa URL definující základní URL webu (site) s aktualizacemi (slouží k určení umístění jednotlivé <funkce> a <archivu>). Může být relativní
nebo absolutní. Je-li relativní, pak k souboru site.xml. Není-li určena, výchozí
je umístění URL souboru site.xml.
- mirrorsURL - Volitelná adresa URL ukazující na soubor, který obsahuje definice zrcadla webu (site) s aktualizacemi. Tato adresa URL může být absolutní nebo relativní vzhledem k tomuto webu. Soubor zrcadla je popsán dále v tomto dokumentu.
- <description> - Stručný popis jako jednoduchý text. Určeno k překladu.
- url - Volitelná adresa URL úplného popisu ve formátu HTML. Adresu URL lze zadat jako
absolutní nebo relativní. Je-li adresa URL relativní, pak k souboru site.xml.
Povšimněte si, že pro manipulaci s národními prostředími by měla být hodnota adresy URL oddělena tak, aby bylo možné zadat alternativní adresy URL pro jednotlivé národní jazyky.
- <feature> - Označuje odkazované archivy funkcí.
- type - Volitelná specifikace type funkce. Hodnota se týká typového řetězce
registrovaného prostřednictvím bodu rozšíření instalace rámcového
systému. Není-li typ určen, bude považován za výchozí typ funkce pro tento
site. V případě nastavení výchozího typu webu (site) modulu Eclipse bude výchozím typem
funkce typ zabalené funkce (jak je specifikován v tomto dokumentu).
- id - Volitelný identifikátor funkce. Tento údaj slouží pro optimalizaci
výkonu a zrychlení vyhledávání funkcí. Musí se shodovat s identifikátorem
uvedeným v souboru feature.xml odkazovaného archivu (atribut url).
Je-li určen, musí být zadán také atribut version.
- version - Volitelná verze funkce. Tento údaj slouží pro optimalizaci
výkonu a zrychlení vyhledávání funkcí. Musí se shodovat s verzí
uvedenou v souboru feature.xml odkazovaného archivu (atribut url).
Je-li určena, musí být zadán také atribut id.
- url - Nezbytný odkaz URL na archiv funkcí. Může být relativní nebo absolutní.
Je-li relativní, pak k umístění souboru site.xml.
Poznámka:
výchozí implementace webu (site) umožňuje přístup k funkcím bez jejich
výslovné deklarace pomocí položky <feature>. Standardně je odkaz na nedeklarované funkce interpretován jako "features/<id>_<version>.jar".
Poznámka: Abyste docílili lepšího výkonu vyhledávání, vždy definujte atributy id a verze.
- patch - Volitelný atribut k označení toho, že jde o opravu (speciální typ funkce).
Poznámka: Abyste docílili lepšího výkonu vyhledávání, vždy tento atribut definujte.
- os - Volitelná specifikace operačního systému. Čárkou oddělený seznam označovačů operačních systémů definovaných platformou Eclipse (viz dokumentace Javadoc pro org.eclipse.core.runtime.Platform). Indikuje, že tato funkce má být instalována na jednom ze zadaných operačních systémů.
Není-li tento atribut zadán, lze funkci nainstalovat na všech
systémech (přenosná implementace). Tuto informaci podpora instalace a aktualizace používá jako radu (uživatel může vynutit instalaci funkce bez ohledu na toto nastavení).
- arch - Volitelná specifikace architektury počítače. Čárkou oddělený seznam označovačů architektury, jež jsou definovány platformou Eclipse (viz dokumentace Javadoc pro
org.eclipse.core.runtime.Platform). Určuje, že tato funkce má být instalována pouze na některý z uvedených systémů. Není-li tento atribut zadán, lze funkci nainstalovat na všech
systémech (přenosná implementace). Tuto informaci podpora instalace a aktualizace používá jako radu (uživatel může vynutit instalaci funkce bez ohledu na toto nastavení).
- ws - Volitelná specifikace systému oken. Čárkou oddělený seznam označovačů systémů Windows definovaných platformou Eclipse (viz dokumentace Javadoc pro org.eclipse.core.runtime.Platform). Indikuje, že tato funkce má být instalována na jednom ze zadaných systémů Windows. Není-li tento atribut zadán, lze funkci nainstalovat na všech
systémech (přenosná implementace). Tuto informaci podpora instalace a aktualizace používá jako radu (uživatel může vynutit instalaci funkce bez ohledu na toto nastavení).
- nl - Volitelná specifikace národního prostředí. Čárkou oddělený seznam označovačů národního prostředí, které jsou definovány prostředím Java. Určuje, že tato funkce má být instalována pouze na systému, který je provozován s kompatibilním národním prostředím (s použitím pravidel prostředí Java pro národní prostředí). Není-li tento atribut zadán, lze funkci nainstalovat na všech systémech (jazykově neutrální implementace).
Tuto informaci podpora instalace a aktualizace používá jako radu (uživatel může vynutit instalaci funkce bez ohledu na toto nastavení).
- <archive> - Určuje odkazovaný "úložný" archiv (skutečné soubory odkazované
prostřednictvím prvků <plugin> nebo <data> v manifestu dané funkce).Tento site spravuje archivy pouze jako mapu typu cesta-k-URL.
Výchozí implementace webu (site) Eclipse nevyžaduje zahrnutí sekce <archive>
do mapy webu (site) (site.xml). O libovolném odkazu na archiv, který není výslovně
definován jako součást sekce <archive>, se předpokládá jeho namapování na url ve tvaru "<archivePath>" relativně k umístění souboru site.xml.
- path - Nezbytný identifikátor cesty k archivu. Jde o řetězec, jenž je určen
funkcí odkazující se na tento archiv, a webem (site) není dále interpretován (jinak než jako vyhledávací token).
- url - Nezbytný odkaz URL na archiv. Může být relativní nebo absolutní.
Je-li relativní, pak k umístění souboru site.xml.
- <category-def> - Volitelná definice kategorie, kterou může používat
instalační a aktualizační podpora k hierarchické organizaci funkcí.
- name - Název kategorie. Je určen jako cesta tokenů názvů oddělených znakem
/
- label - Zobrazitelný štítek. Určeno k překladu.
- <category> - Vlastní specifikace kategorie pro položku funkce.
Povšimněte si, že v obecném případě dokumenty manifestu feature.xml určují kódování UTF-8 encoding. Například:
<?xml version="1.0" encoding="UTF-8"?>
Přeložitelný text obsažený v souboru site.xml lze rozdělit do souborů site<_locale>.properties pomocí konvencí pro balíčky vlastností Java. Vezměte na vědomí, že přeložené řetězce jsou použity v době instalace (tj. nevyužívají běhový mechanizmus fragmentu modulu plug-in). Balíčky vlastností jsou umístěny relativně k umístění souboru site.xml.
Výchozí rozvržení webu (site)
<kořen webu (site)>/
site.xml
funkce/
archivy funkcí (např. org.eclipse.javatools_1.0.1.jar)
<featureId>_<featureVersion>/ (volitelné)
soubory (ne moduly plug-in) pro funkce
plugins/
archivy modulů plug-in
(např. org.eclipse.ui_1.0.3.jar)
Soubor zrcadel
Aktualizační soubor zrcadel (ten, na který odkazuje atribut mirrorsURL ze <site>) obsahuje definice zrcadel site s aktualizacemi. Jeho formát je definován následujícím dtd:
<?xml encoding="ISO-8859-2"?>
<!ELEMENT mirrors (mirror*))>
<!ELEMENT mirror EMPTY>
<!ATTLIST mirror
url
CDATA #REQUIRED
label
CDATA #REQUIRED
>
- <mirrors> - Definuje dostupná zrcadla site s aktualizacemi
- <mirror> - Definuje zrcadlový web (site)
- url - Adresa URL zrcadlového webu
- label - Zobrazitelný štítek. Určeno k překladu.
Řízení přístupu
Výchozí implementace webu (site) Eclipse obsahuje podporu přístupu http
se základním ověřením uživatele (userid a heslo).
Do základu Eclipse lze přidat vlastní mechanizmy pro řízení přístupu jedním ze dvou způsobů:
-
dodáním serverové logiky do aktualizačního serveru (např. implementací servletů,
jež počítají mapu site.xml a řídí přístup k jednotlivým archivům na základě
určitých uživatelských kritérií),
-
dodáním vlastní konkrétní implementace webového (site) objektu (nainstalován na
klientském počítači, aktualizační server určen <site type="">).
Požadované řídící mechanizmy jsou podporovány vlastní konkrétní implementací webu (site) včetně libovolné logiky na straně serveru.
Eclipse obsahuje příklad s ukázkou implementace přístupového
mechanizmu na bázi klíčových souborů funkcí.