1 package org.columba.mail.filter; 19 20 import org.columba.core.filter.FilterCriteria; 21 import org.columba.core.filter.IFilterCriteria; 22 import org.columba.core.xml.XmlElement; 23 24 28 public class MailFilterCriteria extends FilterCriteria { 29 30 private static final String HEADERFIELD = "headerfield"; 32 33 public final static int SUBJECT = 0; 34 35 public final static int FROM = 1; 36 37 public final static int TO = 2; 38 39 public final static int CC = 3; 40 41 public final static int BCC = 4; 42 43 public final static int DATE = 5; 44 45 public final static int SIZE = 6; 46 47 public final static int BODY = 7; 48 49 public final static int FLAGS = 8; 50 51 public final static int PRIORITY = 9; 52 53 public final static int CUSTOM_HEADERFIELD = 10; 54 55 public final static int COLOR = 11; 56 57 public final static int ACCOUNT = 12; 58 59 private final String [] type = { "Subject", "From", "To", "Cc", "Bcc", 60 "Date", "Size", "Body", "Flags", "Priority", "Custom Headerfield", "Color", "Account" }; 61 62 public MailFilterCriteria() { 63 super(); 64 } 65 66 public MailFilterCriteria(IFilterCriteria c) { 67 super(c.getRoot()); 68 } 69 70 73 public MailFilterCriteria(XmlElement root) { 74 super(root); 75 } 76 77 80 public int getType() { 81 82 int result = -1; 83 84 String h = getTypeString(); 85 86 for (int i = 0; i < type.length; i++) { 87 if (h.equals(type[i])) 88 result = i; 89 } 90 91 return result; 92 } 93 94 public void setType(int typeIndex) { 95 super.setTypeString(type[typeIndex]); 96 } 97 98 public String getHeaderfieldString() { 99 return getRoot().getAttribute(MailFilterCriteria.HEADERFIELD); 100 } 101 102 public void setHeaderfieldString(String s) { 103 getRoot().addAttribute(MailFilterCriteria.HEADERFIELD, s); 104 } 105 106 } | Popular Tags |