Revision: 26509
Author: pgardner
Date: 2011-02-25 05:40:13 +0000 (Fri, 25 Feb 2011)
Log Message:
-----------
Modified Paths:
--------------
client/trunk/azureus2/src/org/gudy/azureus2/pluginsimpl/local/utils/resourcedownloader/ResourceDownloaderBaseImpl.java
client/trunk/azureus2/src/org/gudy/azureus2/pluginsimpl/local/utils/resourcedownloader/ResourceDownloaderURLImpl.java
Modified: client/trunk/azureus2/src/org/gudy/azureus2/pluginsimpl/local/utils/resourcedownloader/ResourceDownloaderBaseImpl.java
===================================================================
--- client/trunk/azureus2/src/org/gudy/azureus2/pluginsimpl/local/utils/resourcedownloader/ResourceDownloaderBaseImpl.java 2011-02-24 05:08:01 UTC (rev 26508)
+++ client/trunk/azureus2/src/org/gudy/azureus2/pluginsimpl/local/utils/resourcedownloader/ResourceDownloaderBaseImpl.java 2011-02-25 05:40:13 UTC (rev 26509)
@@ -74,6 +74,38 @@
setSize(
long size );
+ public boolean
+ getBooleanProperty(
+ String key )
+
+ throws ResourceDownloaderException
+ {
+ Object obj = getProperty( key );
+
+ if ( obj instanceof Boolean ){
+
+ return(((Boolean)obj).booleanValue());
+ }
+
+ return( false );
+ }
+
+ public long
+ getLongProperty(
+ String key )
+
+ throws ResourceDownloaderException
+ {
+ Object obj = getProperty( key );
+
+ if ( obj == null || !( obj instanceof Number )){
+
+ return( -1 );
+ }
+
+ return(((Number)obj).longValue());
+ }
+
public String
getStringProperty(
String key )
@@ -118,6 +150,9 @@
if ( res != null ||
getPropertySupport( PR_PROPERTIES_SET ) != null ||
name.equalsIgnoreCase( "URL_Connection" ) ||
+ name.equalsIgnoreCase( "URL_Connect_Timeout" ) ||
+ name.equalsIgnoreCase( "URL_Read_Timeout" ) ||
+ name.equalsIgnoreCase( "URL_Trust_Content_Length" ) ||
name.equalsIgnoreCase( "URL_HTTP_VERB" )){
return( res );
Modified: client/trunk/azureus2/src/org/gudy/azureus2/pluginsimpl/local/utils/resourcedownloader/ResourceDownloaderURLImpl.java
===================================================================
--- client/trunk/azureus2/src/org/gudy/azureus2/pluginsimpl/local/utils/resourcedownloader/ResourceDownloaderURLImpl.java 2011-02-24 05:08:01 UTC (rev 26508)
+++ client/trunk/azureus2/src/org/gudy/azureus2/pluginsimpl/local/utils/resourcedownloader/ResourceDownloaderURLImpl.java 2011-02-25 05:40:13 UTC (rev 26509)
@@ -595,6 +595,22 @@
}
}
+ long connect_timeout = getLongProperty( "URL_Connect_Timeout" );
+
+ if ( connect_timeout >= 0 ){
+
+ con.setConnectTimeout((int)connect_timeout );
+ }
+
+ long read_timeout = getLongProperty( "URL_Read_Timeout" );
+
+ if ( read_timeout >= 0 ){
+
+ con.setReadTimeout((int)read_timeout );
+ }
+
+ boolean trust_content_length = getBooleanProperty( "URL_Trust_Content_Length" );
+
con.connect();
int response = con instanceof HttpURLConnection?((HttpURLConnection)con).getResponseCode():HttpURLConnection.HTTP_OK;
@@ -761,6 +777,11 @@
while( !cancel_download ){
+ if ( size >= 0 && total_read >= size && trust_content_length ){
+
+ break;
+ }
+
int read = input_stream.read(buf);
if ( read > 0 ){
|