📄 displayformatters.java
字号:
formatHashFails(
DownloadManager download_manager )
{
PEPeerManager pm = download_manager.getPeerManager();
DiskManager dm = download_manager.getDiskManager();
if(pm != null){
long nbFails = pm.getNbHashFails();
// size can exceed int so ensure longs used in multiplication
long size = nbFails * (long)dm.getPieceLength();
String result = String.valueOf(nbFails).concat(" ( ~ ").concat(formatByteCountToKiBEtc(size)).concat(" )");
return result;
}
return "";
}
public static String
formatDownloadStatus(
DownloadManager manager )
{
int state = manager.getState();
String tmp = "";
switch (state) {
case DownloadManager.STATE_WAITING :
tmp = MessageText.getString("ManagerItem.waiting");
break;
case DownloadManager.STATE_INITIALIZING :
tmp = MessageText.getString("ManagerItem.initializing");
break;
case DownloadManager.STATE_INITIALIZED :
tmp = MessageText.getString("ManagerItem.initializing");
break;
case DownloadManager.STATE_ALLOCATING :
tmp = MessageText.getString("ManagerItem.allocating");
break;
case DownloadManager.STATE_CHECKING :
tmp = MessageText.getString("ManagerItem.checking");
break;
case DownloadManager.STATE_FINISHING :
tmp = MessageText.getString("ManagerItem.finishing");
break;
case DownloadManager.STATE_READY :
tmp = MessageText.getString("ManagerItem.ready");
break;
case DownloadManager.STATE_DOWNLOADING :
tmp = MessageText.getString("ManagerItem.downloading");
break;
case DownloadManager.STATE_SEEDING :
DiskManager diskManager = manager.getDiskManager();
if ((diskManager != null) && diskManager.isChecking()) {
tmp = MessageText.getString("ManagerItem.seeding").concat(
" + ").concat(
MessageText.getString("ManagerItem.checking"));
}
else if(manager.getPeerManager()!= null && manager.getPeerManager().isSuperSeedMode()){
tmp = MessageText.getString("ManagerItem.superseeding");
}
else {
tmp = MessageText.getString("ManagerItem.seeding");
}
break;
case DownloadManager.STATE_STOPPING :
tmp = MessageText.getString("ManagerItem.stopping");
break;
case DownloadManager.STATE_STOPPED :
tmp = MessageText.getString("ManagerItem.stopped");
break;
case DownloadManager.STATE_QUEUED :
tmp = MessageText.getString("ManagerItem.queued"); //$NON-NLS-1$
break;
case DownloadManager.STATE_ERROR :
tmp = MessageText.getString("ManagerItem.error").concat(": ").concat(manager.getErrorDetails()); //$NON-NLS-1$ //$NON-NLS-2$
break;
default :
tmp = String.valueOf(state);
}
if (manager.isForceStart() &&
(state == DownloadManager.STATE_SEEDING ||
state == DownloadManager.STATE_DOWNLOADING))
tmp = MessageText.getString("ManagerItem.forced") + " " + tmp;
return( tmp );
}
public static String
formatDownloadStatusDefaultLocale(
DownloadManager manager )
{
int state = manager.getState();
String tmp = "";
switch (state) {
case DownloadManager.STATE_WAITING :
tmp = MessageText.getDefaultLocaleString("ManagerItem.waiting"); //$NON-NLS-1$
break;
case DownloadManager.STATE_INITIALIZING :
tmp = MessageText.getDefaultLocaleString("ManagerItem.initializing");
break;
case DownloadManager.STATE_INITIALIZED :
tmp = MessageText.getDefaultLocaleString("ManagerItem.initializing");
break;
case DownloadManager.STATE_ALLOCATING :
tmp = MessageText.getDefaultLocaleString("ManagerItem.allocating"); //$NON-NLS-1$
break;
case DownloadManager.STATE_CHECKING :
tmp = MessageText.getDefaultLocaleString("ManagerItem.checking"); //$NON-NLS-1$
break;
case DownloadManager.STATE_FINISHING :
tmp = MessageText.getDefaultLocaleString("ManagerItem.finishing"); //$NON-NLS-1$
break;
case DownloadManager.STATE_READY :
tmp = MessageText.getDefaultLocaleString("ManagerItem.ready"); //$NON-NLS-1$
break;
case DownloadManager.STATE_DOWNLOADING :
tmp = MessageText.getDefaultLocaleString("ManagerItem.downloading"); //$NON-NLS-1$
break;
case DownloadManager.STATE_SEEDING :
if (manager.getDiskManager().isChecking()) {
tmp = MessageText.getDefaultLocaleString("ManagerItem.seeding").concat(
" + ").concat(
MessageText.getDefaultLocaleString("ManagerItem.checking"));
}
else if(manager.getPeerManager()!= null && manager.getPeerManager().isSuperSeedMode()){
tmp = MessageText.getDefaultLocaleString("ManagerItem.superseeding"); //$NON-NLS-1$
}
else {
tmp = MessageText.getDefaultLocaleString("ManagerItem.seeding"); //$NON-NLS-1$
}
break;
case DownloadManager.STATE_STOPPING :
tmp = MessageText.getDefaultLocaleString("ManagerItem.stopping");
break;
case DownloadManager.STATE_STOPPED :
tmp = MessageText.getDefaultLocaleString("ManagerItem.stopped"); //$NON-NLS-1$
break;
case DownloadManager.STATE_QUEUED :
tmp = MessageText.getDefaultLocaleString("ManagerItem.queued"); //$NON-NLS-1$
break;
case DownloadManager.STATE_ERROR :
tmp = MessageText.getDefaultLocaleString("ManagerItem.error").concat(": ").concat(manager.getErrorDetails()); //$NON-NLS-1$ //$NON-NLS-2$
break;
default :
tmp = String.valueOf(state);
}
return( tmp );
}
public static String formatPercentFromThousands(int thousands) {
NumberFormat nf = NumberFormat.getPercentInstance();
nf.setMinimumFractionDigits(1);
nf.setMaximumFractionDigits(1);
return nf.format(thousands / 1000.0);
}
public static String formatTimeStamp(long time) {
StringBuffer sb = new StringBuffer();
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(time);
sb.append('[');
sb.append(formatIntToTwoDigits(calendar.get(Calendar.DAY_OF_MONTH)));
sb.append('.');
sb.append(formatIntToTwoDigits(calendar.get(Calendar.MONTH)+1)); // 0 based
sb.append('.');
sb.append(calendar.get(Calendar.YEAR));
sb.append(' ');
sb.append(formatIntToTwoDigits(calendar.get(Calendar.HOUR_OF_DAY)));
sb.append(':');
sb.append(formatIntToTwoDigits(calendar.get(Calendar.MINUTE)));
sb.append(':');
sb.append(formatIntToTwoDigits(calendar.get(Calendar.SECOND)));
sb.append(']');
return sb.toString();
}
public static String formatIntToTwoDigits(int n) {
return n < 10 ? "0".concat(String.valueOf(n)) : String.valueOf(n);
}
public static String
formatDate(
long date )
{
if ( date == 0 ){
return( "" );
}
SimpleDateFormat temp = new SimpleDateFormat("dd-MMM-yyyy HH:mm:ss");
return( temp.format(new Date(date)));
}
public static String
formatDateShort(
long date )
{
if ( date == 0 ){
return( "" );
}
// 24 hour clock, no point in including AM/PM
SimpleDateFormat temp = new SimpleDateFormat("MMM dd, HH:mm");
return( temp.format(new Date(date)));
}
public static String
formatTime(
long time )
{
if ( time == 0 ){
return( "" );
}
// 24 hour clock, no point in including AM/PM
SimpleDateFormat temp = new SimpleDateFormat("HH:mm:ss");
return( temp.format(new Date(time)));
}
public static String
formatDecimal(
double value,
int precision )
{
// this call returns a cached instance.. however, it might be worth
// checking if caching the object ourselves gives any noticable perf gains.
/* Don't use DecimalFormat - it ROUNDS which is not what we want
NumberFormat nf = NumberFormat.getInstance();
if (!lastDecimalFormat.equals(sFormat) && (nf instanceof DecimalFormat)) {
((DecimalFormat)nf).applyPattern(sFormat);
}
return nf.format(value);
*/
String res = String.valueOf( value );
int pos = res.indexOf('.');
if ( pos == -1 ){
if ( precision != 0 ){
res += ".";
for (int i=0;i<precision;i++){
res += '0';
}
}
}else{
if ( precision == 0 ){
res = res.substring(0,pos);
}else{
int digits = res.length() - pos - 1;
if ( digits < precision ){
for (int i=0;i<precision-digits;i++){
res += '0';
}
}else if ( digits > precision ){
res = res.substring( 0, pos+1+precision );
}
}
}
return( res );
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -