Knowledge

JUpdater

Source 📝

372: 22: 241: 338:
The server checks all MD5 checksums against the entries in the database and returns a list of all the files for which the checksums did not match (i.e. a list of all files that are out of date). The following array is sent back for each file that is out of date: (all of those things are read from
320:
The server establishes a session and responds with the session id and the server's jar URL for that program. From this point on the client and server are in a session and the server therefore remembers what program the client wants to update during all further requests connected to that specific
358:
The client begins to patch once all out of date files are downloaded. It copies the current jar's up to date files into a new jar file and then writes the downloaded files into that jar. Once all is done without errors it replaces the old jar with the up to date jar, hence completing the
216:
programs. The utility ensures that the user can always be notified of new versions, and easily upgrade to the latest version from within the program, without having to do anything. The utility only downloads the files that are out of date, saving bandwidth.
297:
JUpdater requires a central server that contains information about the latest version. The clients connect to the server in order to check if there are new versions and to download the changes and changelog. The server requires PHP 4.3 or greater and
227:
server part, which keeps track of the versions and provides the client with all the info it requires. The project is still in development, possibly containing bugs. Any program that is to be updated via JUpdater has to be contained in a
354:
The client starts downloading the out of date files one by one into a temporary storage. For each file the client calculates the MD5 checksum and make sure that it matches, otherwise it tries again (until it's out of
345:
The client requests a changelog from the server (via XML-RPC). The server responds with all changes (as entered by the administrator) made between the client's versions and the latest version.
335:
for all local files that it can find (looking in the file list from the server), the rest are given a checksum of 0. The client then sends the result to the server (via XML-RPC).
32: 248:
A small bundle of classes, a JUpdater client, has to be added to programs so that they can compare their versions with a central server. The client requires
46:
of the topic and provide significant coverage of it beyond a mere trivial mention. If notability cannot be shown, the article is likely to be
285:
can optionally be implemented in order to listen to the update process. This information can then for instance be displayed in a
377: 314:
The JUpdater instance's updateJar method is called with the name of the jar file to update and the relevant program name.
98: 277:
Check if a new version is available and get the corresponding changelog by using the Implementation-Version attribute.
191: 117: 70: 348:
The client displays the changes and asks the listener with shouldStartDownloading() if it should download the files.
310:
Here's an in depth description of what actually happens behind the scenes when performing a complete update check.
176: 77: 397: 43: 223:
is split into two parts. A small Java client, which can easily be implemented into existing programs, and a
212:
is a project which aims to create a utility that allows developers to quickly implement version checks into
324:
The client stores the server's response and sends a request for the file list of the server's jar file via
282: 84: 213: 150: 39: 66: 55: 413: 249: 8: 351:
If false is returned from the method then the client stops here, otherwise it continues.
317:
The client opens a connection to the server and sends the program name (via HTTP Post).
51: 91: 229: 47: 186: 166: 407: 342:
If nothing is out of date then the client stops here, otherwise it continues.
271: 385: 136: 328:. The server responds with a list (taken from the server's database). 201: 325: 38:
Please help to demonstrate the notability of the topic by citing
266:
Check if a new version is available on the server by using the
240: 299: 332: 286: 263:
checksums, this is done in several steps described below.
260: 224: 244:
DKP Log Parser's JUpdater client implementation's GUI.
367: 259:
Update a specified jar file by comparing all files'
405: 33:notability guidelines for products and services 255:The client provides three main operations. 118:Learn how and when to remove this message 239: 406: 305: 378:Free and open-source software portal 15: 13: 14: 425: 400:- The readme for the application. 391: 370: 20: 1: 7: 363: 10: 430: 156:0.5 / March 24, 2006 40:reliable secondary sources 29:The topic of this article 292: 235: 202:www.lokorin.com/jupdater/ 197: 185: 175: 165: 161: 149: 145: 135: 31:may not meet Knowledge's 331:The client calculates 268:Implementation-Version 245: 243: 171:Platform independent 132: 306:How updating works 246: 181:Autoupdate utility 130: 35: 270:attribute in the 207: 206: 128: 127: 120: 102: 30: 421: 380: 375: 374: 373: 302:4.0 or greater. 252:1.5 or greater. 167:Operating system 133: 129: 123: 116: 112: 109: 103: 101: 60: 24: 23: 16: 429: 428: 424: 423: 422: 420: 419: 418: 414:Patch utilities 404: 403: 398:JUpdater readme 394: 376: 371: 369: 366: 308: 295: 238: 157: 141:Andreas Launila 124: 113: 107: 104: 61: 59: 37: 25: 21: 12: 11: 5: 427: 417: 416: 402: 401: 393: 392:External links 390: 389: 388: 382: 381: 365: 362: 361: 360: 356: 352: 349: 346: 343: 340: 339:the database). 336: 329: 322: 318: 315: 307: 304: 294: 291: 289:for the user. 279: 278: 275: 264: 237: 234: 205: 204: 199: 195: 194: 189: 183: 182: 179: 173: 172: 169: 163: 162: 159: 158: 155: 153: 151:Stable release 147: 146: 143: 142: 139: 126: 125: 28: 26: 19: 9: 6: 4: 3: 2: 426: 415: 412: 411: 409: 399: 396: 395: 387: 384: 383: 379: 368: 357: 353: 350: 347: 344: 341: 337: 334: 333:MD5 checksums 330: 327: 323: 319: 316: 313: 312: 311: 303: 301: 290: 288: 284: 276: 273: 269: 265: 262: 258: 257: 256: 253: 251: 242: 233: 231: 226: 222: 218: 215: 211: 203: 200: 196: 193: 190: 188: 184: 180: 178: 174: 170: 168: 164: 160: 154: 152: 148: 144: 140: 138: 134: 122: 119: 111: 100: 97: 93: 90: 86: 83: 79: 76: 72: 69: –  68: 64: 63:Find sources: 57: 53: 49: 45: 41: 34: 27: 18: 17: 386:StableUpdate 309: 296: 280: 272:jar manifest 267: 254: 247: 220: 219: 209: 208: 137:Developer(s) 114: 105: 95: 88: 81: 74: 62: 44:independent 108:March 2021 78:newspapers 67:"JUpdater" 52:redirected 283:interface 42:that are 408:Category 364:See also 230:jar file 221:JUpdater 210:JUpdater 131:JUpdater 359:update. 355:tries). 326:XML-RPC 321:update. 198:Website 187:License 92:scholar 56:deleted 293:Server 236:Client 94:  87:  80:  73:  65:  48:merged 300:MySQL 99:JSTOR 85:books 54:, or 214:Java 192:LGPL 177:Type 71:news 287:GUI 281:An 261:MD5 250:JRE 225:PHP 410:: 232:. 50:, 274:. 121:) 115:( 110:) 106:( 96:· 89:· 82:· 75:· 58:. 36:.

Index

notability guidelines for products and services
reliable secondary sources
independent
merged
redirected
deleted
"JUpdater"
news
newspapers
books
scholar
JSTOR
Learn how and when to remove this message
Developer(s)
Stable release
Operating system
Type
License
LGPL
www.lokorin.com/jupdater/
Java
PHP
jar file

JRE
MD5
jar manifest
interface
GUI
MySQL

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.