A töredékek megfelelők a nemzeti nyelv támogatás összecsomagolásához. Tekintsük át közelebbről a helyszínfüggő fordításfájlok telepítéséhez használt könyvtárstruktúrát. Ez a könyvtárstruktúra attól függetlenül kerül alkalmazásra, hogy a lefordított fájlok be vannak-e csomagolva egy töredékbe vagy eredeti bedolgozóban kerültek biztosításra.
Három mechanizmus áll rendelkezésre a bedolgozóban lévő helyszínfüggő fájlok megkereséséhez.
Fontos megérteni, hogy mely mechanizmust használja a rendszer a fordítandó fájlok eléréséhez, így tudni fogja, hogyan kell elnevezni a fájlt és hova kell helyezni a fájlrendszerben a bedolgozóhoz viszonyítva.
A platform központi része megad egy könyvtárstruktúrát, amely helyszínfüggő alkönyvtárakat használt olyan fájlokhoz, amelyek helyszíne különbözik. A lefordított fájlok az nl nevű könyvtárba kerülnek a bedolgozó alatt. Az alábbi telepítési fa például egy triviális (nincs kód) bedolgozót jelenít meg az about.properties fájl helyszínfüggő fordításaival. A különböző fordítások úgy jelennek meg, mint amelyek egy bedolgozótöredéktől jönnek, nem a bedolgozótól magától. Ez jellemző a fordítások alaptól elkülönített szállításánál, de az nl alkönyvtár a bedolgozó alá helyezhető.
acmeweb/ eclipse/ plugins/ com.example.acme.acmewebsupport_1.0.0/ plugin.xml about.properties (alapértelmezett területi beállítás) com.example.acme.fragmentofacmewebsupport_1.0.0/ fragment.xml (a com.example.acme.acmewebsupport 1.0.0 töredéke) nl/ fr/ about.properties (Francia területi beállítás) CA/ about.properties (Francia-kanadai területi beállítás) FR/ EURO/ about.properties (Euro (Franciaország)) en/ about.properties (Angol területi beállítás) CA/ about.properties (Angol-kanadai területi beállítás) US/ about.properties (Angol-US területi beállítás) de/ about.properties (Német területi beállítás)
A lefordítandó fájlok nincsenek benne a JAR fájlokban. Minden fájlnak egyező fájlnévvel kell rendelkeznie, de az nl könyvtár alatt lévő alkönyvtárakban kell lenniük a töredék (vagy bedolgozó) gyökerében.
Csak a legspeciálisabb fájl kerül elérésre futás közben. A fájl elérési utak a Platform.find, IPluginDescriptor.find és Plugin.find mechanizmus részeként kerülnek keresésre. Tételezzük fel például, hogy az alapértelmezett területi beállítás az en_CA, a bedolgozó pedig az alábbi módon keresi meg az about.properties fájlt:
somePlugin.find("$nl$/about.properties");
A metódus az about.properties első helyének megfelelő URL-címet adja vissza az alábbi sorrendnek megfelelően:
com.example.acme.acmewebsupport_1.0.0/nl/en/CA/about.properties com.example.acme.fragmentofacmewebsupport_1.0.0/nl/en/CA/about.properties ... <tetszőleges más töredékek> com.example.acme.acmewebsupport_1.0.0/nl/en/about.properties com.example.acme.fragmentofacmewebsupport_1.0.0/nl/en/about.properties ... com.example.acme.acmewebsupport_1.0.0/about.properties com.example.acme.fragmentofacmewebsupport_1.0.0/about.properties
Ez a mechanizmust a bedolgozók használják a jól ismert fájlnevek egyéb bedolgozókon belüli kereséséhez. Ez az alábbi jól ismert fájlneveket tartalmazza:
(Megjegyzés: A plugin.properties és fragment.properties nyilvánvalóan hiányzik a listából. Ezeket lényegesen eltérően kezeli a rendszer, amely alább látható.)
A tulajdonság-erőforráskötegek szabványos Java kezelését alkalmazzák más fájlokra. A lefordított fájlokat a JAR fájl tartalmazza, amelyben minden tulajdonságfájl helyszínfüggő névvel rendelkezik, mint például a "message_en_CA.properties". A fájlok csomag-specifikus alkönyvtárakban vannak, és a bedolgozóban vagy egyik töredékében jelenhet meg. Minden lefordított tulajdonságfájl lehet részleges, mivel a kulcsok kikeresése a tulajdonságfájlok egy jól meghatározott láncát érik el.
Az NL töredékek alakja a 2.1 verzió óta lett kialakítva.
Korábban az összes fordítási fájl (a plugin.properties fájlt is beleértbe)
a jar fájlban volt.
Ez inkonzisztens volt, mivel a plugin.properties fájl a bedolgozó
gyökerében volt található.
Az NL töredék új modellhez adaptálásához távolítsa el a plugin.properties
fordítási fájlt a jar fájlból és helyezze át a töredék gyökerébe a
fragment.xml fájllal egy szinten.
Az org.eclipse.ui.workbench NL töredékének új alakja például az alábbi:
org.eclipse.ui.workbench.nl/ fragment.xml plugin_fr.properties plugin_pt_BR.properties ... nl1.jar