|
|
6ba05ab |
--- org/gudy/azureus2/ui/swt/updater2/SWTUpdateChecker.java.orig 2006-05-14 08:10:01.000000000 -0700
|
|
|
6ba05ab |
+++ org/gudy/azureus2/ui/swt/updater2/SWTUpdateChecker.java 2006-05-26 09:25:21.000000000 -0700
|
|
|
6ba05ab |
@@ -57,77 +57,13 @@
|
|
|
e520f06 |
public static void
|
|
|
e520f06 |
initialize()
|
|
|
e520f06 |
{
|
|
|
e520f06 |
- PluginInitializer.getDefaultInterface().getUpdateManager().registerUpdatableComponent(new SWTUpdateChecker(),true);
|
|
|
e520f06 |
}
|
|
|
e520f06 |
|
|
|
e520f06 |
public SWTUpdateChecker() {
|
|
|
e520f06 |
}
|
|
|
e520f06 |
|
|
|
e520f06 |
public void checkForUpdate(final UpdateChecker checker) {
|
|
|
e520f06 |
- try{
|
|
|
e520f06 |
- SWTVersionGetter versionGetter = new SWTVersionGetter( checker );
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- if( versionGetter.needsUpdate() && System.getProperty("azureus.skipSWTcheck") == null ) {
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- String[] mirrors = versionGetter.getMirrors();
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- ResourceDownloader swtDownloader = null;
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- ResourceDownloaderFactory factory = ResourceDownloaderFactoryImpl.getSingleton();
|
|
|
e520f06 |
- List downloaders = new ArrayList();
|
|
|
e520f06 |
- for(int i = 0 ; i < mirrors.length ; i++) {
|
|
|
e520f06 |
- try {
|
|
|
e520f06 |
- downloaders.add(factory.getSuffixBasedDownloader(factory.create(new URL(mirrors[i]))));
|
|
|
e520f06 |
- } catch(MalformedURLException e) {
|
|
|
e520f06 |
- //Do nothing
|
|
|
e520f06 |
- if (Logger.isEnabled())
|
|
|
e520f06 |
- Logger.log(new LogEvent(LOGID, LogEvent.LT_WARNING,
|
|
|
e520f06 |
- "Cannot use URL " + mirrors[i] + " (not valid)"));
|
|
|
e520f06 |
- }
|
|
|
e520f06 |
- }
|
|
|
e520f06 |
- ResourceDownloader[] resourceDownloaders =
|
|
|
e520f06 |
- (ResourceDownloader[])
|
|
|
e520f06 |
- downloaders.toArray(new ResourceDownloader[downloaders.size()]);
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- swtDownloader = factory.getRandomDownloader(resourceDownloaders);
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- // get the size so its cached up
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- try{
|
|
|
e520f06 |
- swtDownloader.getSize();
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- }catch( ResourceDownloaderException e ){
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- Debug.printStackTrace( e );
|
|
|
e520f06 |
- }
|
|
|
e520f06 |
-
|
|
|
6ba05ab |
- final Update update =
|
|
|
6ba05ab |
- checker.addUpdate("SWT Library for " + versionGetter.getPlatform(),
|
|
|
6ba05ab |
- new String[] {"SWT is the graphical library used by Azureus"},
|
|
|
6ba05ab |
- "" + versionGetter.getLatestVersion(),
|
|
|
6ba05ab |
- swtDownloader,
|
|
|
6ba05ab |
- Update.RESTART_REQUIRED_YES
|
|
|
e520f06 |
- );
|
|
|
e520f06 |
-
|
|
|
6ba05ab |
- swtDownloader.addListener(new ResourceDownloaderAdapter() {
|
|
|
6ba05ab |
-
|
|
|
6ba05ab |
- public boolean completed(ResourceDownloader downloader, InputStream data) {
|
|
|
6ba05ab |
- //On completion, process the InputStream to store temp files
|
|
|
6ba05ab |
- return processData(checker,update,downloader,data);
|
|
|
6ba05ab |
- }
|
|
|
6ba05ab |
- });
|
|
|
e520f06 |
- }
|
|
|
e520f06 |
- }catch( Throwable e ){
|
|
|
e520f06 |
- Logger.log(new LogAlert(LogAlert.UNREPEATABLE,
|
|
|
e520f06 |
- "SWT Version check failed", e));
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- checker.failed();
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- }finally{
|
|
|
6ba05ab |
-
|
|
|
e520f06 |
checker.completed();
|
|
|
e520f06 |
- }
|
|
|
e520f06 |
-
|
|
|
e520f06 |
}
|
|
|
e520f06 |
|
|
|
e520f06 |
private boolean
|