📄 maildirfoldersummary.java
字号:
/**
* MaildirFolderSummary.java
* Copyright (C) 1999 fengyun <fengyun@gbsource.net>
*/
package fengyun.Fastmail.Maildir;
import java.io.File;
import java.io.FilenameFilter;
import javax.mail.MessagingException;
import fengyun.Fastmail.util.DU;
/**
* MaildirFolder摘要
* @author fengyun
* @version 1.00
*/
public class MaildirFolderSummary {
protected File folderdir = null; //邮件夹对应的目录
// protected String viewname = null; //界面上显示的邮件夹名称
protected boolean open = false; //是否打开
protected int count = 0; //消息总数
protected int newmesscount = 0; //新消息总数
protected int type = this.HOLDS_FOLDERS; //邮件夹类型
public static final int HOLDS_FOLDERS = 0; //邮件夹允许有子邮件夹
public static final int UNHOLDS_FOLDERS = 1; //不能拥有子邮夹
/**
* 构造
* @param folderdir 邮件夹绝对路径
*/
public MaildirFolderSummary(File folderdir) throws MessagingException {
if (folderdir!=null && folderdir.exists() && folderdir.isDirectory()) this.folderdir = folderdir;
else new MessagingException("ERROR FOLDER DIRECTORY");
}
/**
* 返回邮件夹名称
* @return String 邮件夹名称
*/
public String getName() {
return folderdir.getName();
}
/**
* 返回邮件夹显示的名称
* @return String 邮件夹显示名称
*/
// public String getViewName() {
// return viewname;
// }
/**
* 返回邮件夹绝对路径
* @return String 邮件夹绝对路径
*/
public String getFullName() {
return folderdir.getAbsolutePath();
}
/**
* 邮件夹是否打开
* @return boolean 是否打开
*/
public boolean isOpen() {
return open;
}
/**
* 邮件总数
* @return int 邮件总数
*/
public int getMessageCount() {
return count;
}
/**
* 新邮件总数
* @return int 新邮件总数
*/
public int getNewMessageCount() {
return newmesscount;
}
/**
* 返回邮件夹类型
* @return int 邮件夹类型
*/
public int getType() {
return type;
}
/**
* 返回邮件夹大小
*/
public long getSize() {
return DU.getSize(folderdir);
}
/**
* 打开
*/
public void Open() {
this.open = true;
}
/**
* 关闭
*/
public void Close() {
this.open = false;
}
/**
* 设置消息总数
* @param count 消息总数
*/
public void setMessageCount(int count) {
this.count = count;
}
/**
* 设置新消息总数
* @param newmesscount 新消息总数
*/
public void setNewMessageCount(int newmesscount) {
this.newmesscount = newmesscount;
}
/**
* 设置类型
* @param type 新类型
*/
public void setType(int type) {
this.type = type;
}
/**
* 设置邮件夹显示名称
* @param viewname 显示名称
*/
// public void setViewName(String viewname) {
// this.viewname = viewname;
// }
/**
* 邮件夹是否存在
* @return boolean 是否存在
*/
public boolean exists() {
return folderdir.exists();
}
/**
* 邮件夹列表
* @param filter 过滤器
* @return String[] 对应的文件列表
*/
public String[] list(FilenameFilter filter) {
return folderdir.list(filter);
}
/**
* 消息数加一
*/
public void incMessageCount() {
this.count ++;
}
/**
* 消息数减一
*/
public void decMessageCount() {
this.count --;
}
/**
* 新消息加一
*/
public void incNewMessageCount() {
this.newmesscount ++;
}
/**
* 新消息减一
*/
public void decNewMessageCount() {
this.newmesscount --;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -