Well Wunderbar ! Vielen Dank !
Another thing that I would like to see in the future is to be able to watch and controll more downloadspecfic behaviours in a pure object oriented fashion: Such as being able to switch to a downloads own control page (or window) and change the settings for each download
I believe it would be desirable to be able to reject the contents of any segement if its small or maybe even (introducing some plugin architecture) allowing to pre-view-visualize any segment and if its contents are not 'al gusto' manually eliminate them... I had it a few times now that I believe the fragmented caused file corruption - and I am wishing for a future where I could set up phext to replace a faulty segment manually or automatically!
About the exponential retry scheme: People will want to sometimes manually reset the exponent. I still think the base should also be made adjustable if not even instead using a progressive factor (start out multiplying with 2 but in consecutive multiplications decrease the factor to 1.x within 'n' iterations) this way preventing the very inefficient way of checking only again in double the last timeinterval...
Essentilly the parameters could be :
float basicTimeUnit
float baseFactor
float factorProgressTarget
int exponentLimit
long nextConnectTime
then the method would be :
public void setNextConnect() |