?? uploadlistener.java
字號(hào):
package com.upload;
public class UploadListener implements OutputStreamListener {
// 保存狀態(tài)的內(nèi)部類對(duì)象
private FileUploadStats fileUploadStats = new FileUploadStats();
// 構(gòu)造方法
public UploadListener(long totalSize) {
fileUploadStats.setTotalSize(totalSize);
}
public void start() {
// 設(shè)置當(dāng)前狀態(tài)為開始
fileUploadStats.setCurrentStatus("start");
}
public void bytesRead(int byteCount) {
// 將已讀取的數(shù)據(jù)保存到狀態(tài)對(duì)象中
fileUploadStats.incrementBytesRead(byteCount);
// 設(shè)置當(dāng)前的狀態(tài)為讀取過程中
fileUploadStats.setCurrentStatus("reading");
}
public void error(String s) {
// 設(shè)置當(dāng)前狀態(tài)為出錯(cuò)
fileUploadStats.setCurrentStatus("error");
}
public void done() {
// 設(shè)置當(dāng)前已讀取數(shù)據(jù)等于總數(shù)據(jù)大小
fileUploadStats.setBytesRead(fileUploadStats.getTotalSize());
// 設(shè)置當(dāng)前狀態(tài)為完成
fileUploadStats.setCurrentStatus("done");
}
public FileUploadStats getFileUploadStats() {
// 返回當(dāng)前狀態(tài)對(duì)象
return fileUploadStats;
}
// 保存狀態(tài)類
public static class FileUploadStats {
private long totalSize = 0;// 總數(shù)據(jù)的大小
private long bytesRead = 0;// 已讀數(shù)據(jù)大小
private long startTime = System.currentTimeMillis();// 開始讀取的時(shí)間
private String currentStatus = "none";// 默認(rèn)的狀態(tài)
public long getTotalSize()// 屬性totalSize的get方法
{
return totalSize;
}
public void setTotalSize(long totalSize) {
this.totalSize = totalSize;
}
public long getBytesRead()// 屬性bytesRead的get方法
{
return bytesRead;
}
public long getElapsedTimeInSeconds()// 獲得已經(jīng)上傳得時(shí)間
{
return (System.currentTimeMillis() - startTime) / 1000;
}
public String getCurrentStatus()// 屬性currentStatus的get方法
{
return currentStatus;
}
public void setCurrentStatus(String currentStatus) {
this.currentStatus = currentStatus;
}
public void setBytesRead(long bytesRead) {
this.bytesRead = bytesRead;
}
public void incrementBytesRead(int byteCount) {
this.bytesRead += byteCount;
}
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -