JUpdater - JUpdater
Vývojáři | Andreas Launila |
---|---|
Stabilní uvolnění | 0,5 / 24. března 2006 |
Operační systém | Nezávislá na platformě |
Typ | Nástroj pro automatickou aktualizaci |
Licence | LGPL |
webová stránka | www.lokorin.com/jupdater/ |
JUpdater je projekt, jehož cílem je vytvořit nástroj, který vývojářům umožní rychle implementovat kontroly verzí Jáva programy. Nástroj zajišťuje, že uživatel může být vždy informován o nových verzích a snadno upgradovat na nejnovější verzi v rámci programu, aniž by musel cokoli dělat. Nástroj stáhne pouze soubory, které jsou zastaralé, čímž šetří šířku pásma.
JUpdater je rozdělena na dvě části. Malý klient Java, který lze snadno implementovat do stávajících programů, a PHP serverová část, která sleduje verze a poskytuje klientovi všechny potřebné informace. Projekt je stále ve vývoji a může obsahovat chyby. Jakýkoli program, který má být aktualizován prostřednictvím JUpdater, musí být obsažen v a soubor jar.
Klient
K programům je třeba přidat malý balíček tříd, klienta JUpdater, aby mohli porovnávat své verze s centrálním serverem. Klient vyžaduje JRE 1,5 nebo vyšší.
Klient poskytuje tři hlavní operace.
- Aktualizujte zadaný soubor jar porovnáním všech souborů ' MD5 kontrolní součty, to se provádí v několika krocích popsaných níže.
- Zkontrolujte, zda je na serveru k dispozici nová verze, pomocí Verze implementace atribut v jar manifest.
- Zkontrolujte, zda je k dispozici nová verze, a získejte odpovídající seznam změn pomocí atributu Implementation-Version.
An rozhraní lze volitelně implementovat za účelem naslouchání procesu aktualizace. Tyto informace pak mohou být například zobrazeny v a GUI pro uživatele.
Server
JUpdater vyžaduje centrální server, který obsahuje informace o nejnovější verzi. Klienti se připojují k serveru za účelem kontroly, zda existují nové verze, a ke stažení změn a protokolu změn. Server vyžaduje PHP 4.3 nebo vyšší a MySQL 4,0 nebo vyšší.
Jak aktualizace funguje
Zde je podrobný popis toho, co se ve skutečnosti děje v zákulisí při provádění úplné kontroly aktualizace.
- Metoda updateJar instance JUpdater je volána s názvem souboru jar, který se má aktualizovat, a názvem příslušného programu.
- Klient otevře připojení k serveru a odešle název programu (prostřednictvím protokolu HTTP Post).
- Server vytvoří relaci a odpoví ID relace a adresou URL serveru jar pro tento program. Od tohoto okamžiku jsou klient a server v relaci a server si proto pamatuje, jaký program chce klient aktualizovat během všech dalších požadavků souvisejících s touto konkrétní aktualizací.
- Klient uloží odpověď serveru a odešle požadavek na seznam souborů jar souboru serveru prostřednictvím XML-RPC. Server odpoví seznamem (převzatým z databáze serveru).
- Klient vypočítá Kontrolní součty MD5 pro všechny místní soubory, které najde (při pohledu na seznam souborů ze serveru), dostane zbytek kontrolní součet 0. Klient poté odešle výsledek na server (prostřednictvím XML-RPC).
- Server zkontroluje všechny kontrolní součty MD5 proti položkám v databázi a vrátí seznam všech souborů, u nichž se kontrolní součty neshodovaly (tj. Seznam všech souborů, které jsou zastaralé). Následující pole je odesláno zpět pro každý soubor, který je zastaralý: [název_souboru, velikost, správný md5] (všechny tyto věci jsou čteny z databáze).
- Pokud nic není zastaralé, klient se zde zastaví, jinak bude pokračovat.
- Klient požaduje protokol změn ze serveru (prostřednictvím XML-RPC). Server odpovídá všemi změnami (zadanými správcem) mezi verzemi klienta a nejnovější verzí.
- Klient zobrazí změny a zeptá se posluchače pomocí shouldStartDownloading (), zda by měl stáhnout soubory.
- Pokud je z metody vrácena hodnota false, klient se zde zastaví, jinak bude pokračovat.
- Klient začne postupně stahovat zastaralé soubory do dočasného úložiště. Pro každý soubor klient vypočítá kontrolní součet MD5 a ujistí se, že odpovídá, jinak se pokusí znovu (dokud nebude mimo pokus).
- Klient začne opravovat, jakmile se stáhnou všechny zastaralé soubory. Zkopíruje aktuální soubory aktuálního jar do nového souboru jar a poté zapíše stažené soubory do tohoto jar. Jakmile je vše provedeno bez chyb, nahradí starou nádobu aktualizovanou nádobou, čímž se aktualizace dokončí.
Viz také
externí odkazy
- Soubor Readme JUpdater - Soubor Readme pro aplikaci.