SMConstpublic class SMConst extends Object Created on Jul 18, 2007
Created by Alan Snyder
Copyright (C) 2007 Aelitis, All Rights Reserved.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
AELITIS, SAS au capital de 63.529,40 euros
8 Allee Lenotre, La Grille Royale, 78600 Le Mesnil le Roi, France. |
Fields Summary |
---|
public static final int | START_DOWNLOAD_RATE_MAX | public static final int | START_UPLOAD_RATE_MAX | public static final int | MIN_UPLOAD_BYTES_PER_SEC | public static final int | MIN_DOWNLOAD_BYTES_PER_SEC | public static final int | RATE_UNLIMITED |
Constructors Summary |
---|
private SMConst()
|
Methods Summary |
---|
public static int | calculateMinDownload(int maxBytesPerSec)
int min = maxBytesPerSec/10;
return checkForMinDownloadValue( min );
| public static int | calculateMinUpload(int maxBytesPerSec)Rule: Min value is alway 10% of max, but not below 5k.
int min = maxBytesPerSec/10;
return checkForMinUploadValue( min );
| public static int | checkForMinDownloadValue(int rateBytesPerSec)
if( rateBytesPerSec < MIN_DOWNLOAD_BYTES_PER_SEC ){
return MIN_DOWNLOAD_BYTES_PER_SEC;
}
return rateBytesPerSec;
| public static int | checkForMinUploadValue(int rateBytesPerSec)No limit should go below 5k bytes/sec.
if( rateBytesPerSec < MIN_UPLOAD_BYTES_PER_SEC ){
return MIN_UPLOAD_BYTES_PER_SEC;
}
return rateBytesPerSec;
| public static com.aelitis.azureus.core.speedmanager.SpeedManagerLimitEstimate | filterEstimate(com.aelitis.azureus.core.speedmanager.SpeedManagerLimitEstimate estimate, int startValue)Early in the search process the ping-mapper can give estimates that are too low due to
a lack of information. The starting upload and download limits is 60K/30K should not go
below the starting value a slow DSL lines should.
int estBytesPerSec = filterLimit(estimate.getBytesPerSec(), startValue);
return new FilteredLimitEstimate(estBytesPerSec,
estimate.getEstimateType(),
estimate.getMetricRating(),
estimate.getString() );
| public static int | filterLimit(int bytesPerSec, int startValue)
int retVal = Math.max(bytesPerSec, startValue);
// Zero is unlimited. Don't filter that value.
if( bytesPerSec==0 ){
return bytesPerSec;
}
return retVal;
|
|