|
|
6ba05ab |
--- org/gudy/azureus2/update/CoreUpdateChecker.java.orig 2006-05-14 08:10:03.000000000 -0700
|
|
|
6ba05ab |
+++ org/gudy/azureus2/update/CoreUpdateChecker.java 2006-05-26 09:23:28.000000000 -0700
|
|
|
6ba05ab |
@@ -123,8 +123,6 @@
|
|
|
e520f06 |
props.setProperty( "plugin.version", plugin_interface.getAzureusVersion());
|
|
|
e520f06 |
|
|
|
e520f06 |
rdf = plugin_interface.getUtilities().getResourceDownloaderFactory();
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- plugin_interface.getUpdateManager().registerUpdatableComponent( this, true );
|
|
|
e520f06 |
}
|
|
|
e520f06 |
|
|
|
e520f06 |
public String
|
|
|
6ba05ab |
@@ -143,156 +141,9 @@
|
|
|
e520f06 |
checkForUpdate(
|
|
|
e520f06 |
final UpdateChecker checker )
|
|
|
e520f06 |
{
|
|
|
e520f06 |
- try{
|
|
|
e520f06 |
- String current_version = plugin_interface.getAzureusVersion();
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- log.log( "Update check starts: current = " + current_version );
|
|
|
b84895e |
-
|
|
|
e520f06 |
- Map decoded = VersionCheckClient.getSingleton().getVersionCheckInfo(
|
|
|
e520f06 |
- first_check?VersionCheckClient.REASON_UPDATE_CHECK_START:VersionCheckClient.REASON_UPDATE_CHECK_PERIODIC);
|
|
|
e520f06 |
-
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- displayUserMessage( decoded );
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- String latest_version = null;
|
|
|
e520f06 |
- String latest_file_name = null;
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- byte[] b_version = (byte[])decoded.get("version");
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- if ( b_version != null ){
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- latest_version = new String( b_version );
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- plugin_interface.getPluginProperties().setProperty( LATEST_VERSION_PROPERTY, latest_version );
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- }else{
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- throw( new Exception( "No version found in reply" ));
|
|
|
e520f06 |
- }
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- byte[] b_filename = (byte[]) decoded.get("filename");
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- if ( b_filename != null ){
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- latest_file_name = new String( b_filename );
|
|
|
e520f06 |
- }
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- String msg = "Core: latest_version = '" + latest_version + "', file = '" + latest_file_name + "'";
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- checker.reportProgress( msg );
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- log.log( msg );
|
|
|
e520f06 |
-
|
|
|
b84895e |
- if ( !shouldUpdate( current_version, latest_version )){
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- return;
|
|
|
e520f06 |
- }
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- final String f_latest_version = latest_version;
|
|
|
e520f06 |
- final String f_latest_file_name = latest_file_name;
|
|
|
e520f06 |
-
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- ResourceDownloader[] primary_mirrors;
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- primary_mirrors = getPrimaryDownloaders( latest_file_name );
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- // the download hierarchy is primary mirrors first (randomised alternate)
|
|
|
e520f06 |
- // then backup mirrors (randomised alternate)
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- // we don't want to load the backup mirrors until the primary mirrors fail
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- ResourceDownloader random_primary_mirrors = rdf.getRandomDownloader( primary_mirrors );
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- ResourceDownloader backup_downloader =
|
|
|
e520f06 |
- rdf.create(
|
|
|
e520f06 |
- new ResourceDownloaderDelayedFactory()
|
|
|
e520f06 |
- {
|
|
|
e520f06 |
- public ResourceDownloader
|
|
|
e520f06 |
- create()
|
|
|
e520f06 |
- {
|
|
|
e520f06 |
- ResourceDownloader[] backup_mirrors = getBackupDownloaders( f_latest_file_name );
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- return( rdf.getRandomDownloader( backup_mirrors ));
|
|
|
e520f06 |
- }
|
|
|
e520f06 |
- });
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- ResourceDownloader top_downloader =
|
|
|
e520f06 |
- rdf.getAlternateDownloader(
|
|
|
e520f06 |
- new ResourceDownloader[]
|
|
|
e520f06 |
- {
|
|
|
e520f06 |
- random_primary_mirrors,
|
|
|
e520f06 |
- backup_downloader,
|
|
|
e520f06 |
- });
|
|
|
e520f06 |
-
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- top_downloader.addListener( rd_logger );
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- // get size so it is cached
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- top_downloader.getSize();
|
|
|
e520f06 |
-
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- byte[] info_b = (byte[])decoded.get( "info" );
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- String info = null;
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- if ( info_b != null ){
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- try{
|
|
|
e520f06 |
- info = new String( info_b );
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- }catch( Throwable e ){
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- Debug.printStackTrace( e );
|
|
|
e520f06 |
- }
|
|
|
e520f06 |
- }
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- String[] desc;
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- if ( info == null ){
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- desc = new String[]{"Core Azureus Version" };
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- }else{
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- desc = new String[]{"Core Azureus Version", info };
|
|
|
e520f06 |
- }
|
|
|
e520f06 |
-
|
|
|
6ba05ab |
- final Update update =
|
|
|
6ba05ab |
- checker.addUpdate(
|
|
|
e520f06 |
- "Core Azureus Version",
|
|
|
e520f06 |
- desc,
|
|
|
e520f06 |
- latest_version,
|
|
|
e520f06 |
- top_downloader,
|
|
|
e520f06 |
- Update.RESTART_REQUIRED_YES );
|
|
|
e520f06 |
-
|
|
|
6ba05ab |
- top_downloader.addListener(
|
|
|
6ba05ab |
- new ResourceDownloaderAdapter()
|
|
|
6ba05ab |
- {
|
|
|
6ba05ab |
- public boolean
|
|
|
6ba05ab |
- completed(
|
|
|
6ba05ab |
- final ResourceDownloader downloader,
|
|
|
6ba05ab |
- InputStream data )
|
|
|
6ba05ab |
- {
|
|
|
6ba05ab |
- installUpdate( checker, update, downloader, f_latest_version, data );
|
|
|
6ba05ab |
-
|
|
|
6ba05ab |
- return( true );
|
|
|
6ba05ab |
- }
|
|
|
6ba05ab |
- });
|
|
|
e520f06 |
- }catch( Throwable e ){
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- log.log( e );
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- Debug.printStackTrace( e );
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- checker.failed();
|
|
|
e520f06 |
-
|
|
|
e520f06 |
- }finally{
|
|
|
e520f06 |
-
|
|
|
e520f06 |
checker.completed();
|
|
|
e520f06 |
|
|
|
e520f06 |
first_check = false;
|
|
|
e520f06 |
- }
|
|
|
e520f06 |
}
|
|
|
e520f06 |
|
|
|
e520f06 |
|