package org.nutz.mvc.upload; import java.io.Serializable; /** * 当用户通过传统的 http 方式上传文件时。 UploadAdaptor 会负责上传流的解析 <br> * 此时,它会创建这个对象,并保存在会话对象中(名字参见 UploadInfo.SESSION_NAME 常量)<br> * <br> * 用户可以随时通过 HTTP 查看当前 session 中这个对象,来获知上传的进度。 <br> * 用户也可以将这个对象的 stop 属性设置成 true,<br> * 那么 UploadAdaptor 会终止上传(通过抛出 UploadStopException)<br> * 并将这个对象的 sum 和 current 属性均设成 -2 * * @author zozoh(zozohtnt@gmail.com) */ public class UploadInfo implements Serializable { private static final long serialVersionUID = 1145316598297147074L; public static final String SESSION_NAME = "UPLOAD_INFO"; /** * 本次上传,流的总大小。单位 byte */ public long sum; /** * 当前已经读取的字节数 */ public long current; /** * 是否要立刻停止 */ public boolean stop; public UploadInfo clone() { UploadInfo old = new UploadInfo(); old.sum = sum; old.current = current; stop = true; return old; } }