1 package org.columba.mail.filter; 19 20 24 public class MailFilterFactory { 25 26 private MailFilterFactory() { 27 } 28 29 public static MailFilterCriteria createSubjectContains(String pattern) { 30 MailFilterCriteria c = new MailFilterCriteria(); 31 c.setType(MailFilterCriteria.SUBJECT); 32 c.setCriteria(MailFilterCriteria.CONTAINS); 33 c.setPatternString(pattern); 34 c.setHeaderfieldString("Subject"); 35 36 return c; 37 } 38 39 public static MailFilterCriteria createSubjectContainsNot(String pattern) { 40 MailFilterCriteria c = new MailFilterCriteria(); 41 c.setType(MailFilterCriteria.SUBJECT); 42 c.setCriteria(MailFilterCriteria.CONTAINS_NOT); 43 c.setPatternString(pattern); 44 c.setHeaderfieldString("Subject"); 45 46 return c; 47 } 48 49 public static MailFilterCriteria createCustomHeaderfieldContains( 50 String headerfield, String pattern) { 51 MailFilterCriteria c = new MailFilterCriteria(); 52 c.setType(MailFilterCriteria.CUSTOM_HEADERFIELD); 53 c.setCriteria(MailFilterCriteria.CONTAINS); 54 c.setPatternString(pattern); 55 c.setHeaderfieldString(headerfield); 56 57 return c; 58 } 59 60 public static MailFilterCriteria createFromContains(String pattern) { 61 MailFilterCriteria c = new MailFilterCriteria(); 62 c.setType(MailFilterCriteria.FROM); 63 c.setCriteria(MailFilterCriteria.CONTAINS); 64 c.setPatternString(pattern); 65 c.setHeaderfieldString("From"); 66 67 return c; 68 } 69 70 public static MailFilterCriteria createToContains(String pattern) { 71 MailFilterCriteria c = new MailFilterCriteria(); 72 c.setType(MailFilterCriteria.TO); 73 c.setCriteria(MailFilterCriteria.CONTAINS); 74 c.setPatternString(pattern); 75 c.setHeaderfieldString("To"); 76 77 return c; 78 } 79 80 public static MailFilterCriteria createCcContains(String pattern) { 81 MailFilterCriteria c = new MailFilterCriteria(); 82 c.setType(MailFilterCriteria.CC); 83 c.setCriteria(MailFilterCriteria.CONTAINS); 84 c.setPatternString(pattern); 85 c.setHeaderfieldString("Cc"); 86 87 return c; 88 } 89 90 public static MailFilterCriteria createBccContains(String pattern) { 91 MailFilterCriteria c = new MailFilterCriteria(); 92 c.setType(MailFilterCriteria.BCC); 93 c.setCriteria(MailFilterCriteria.CONTAINS); 94 c.setPatternString(pattern); 95 c.setHeaderfieldString("Bcc"); 96 97 return c; 98 } 99 100 public static MailFilterCriteria createBodyContains(String pattern) { 101 MailFilterCriteria c = new MailFilterCriteria(); 102 c.setType(MailFilterCriteria.BODY); 103 c.setCriteria(MailFilterCriteria.CONTAINS); 104 c.setPatternString(pattern); 105 106 return c; 107 } 108 109 public static MailFilterCriteria createSizeIsBigger(int size) { 110 MailFilterCriteria c = new MailFilterCriteria(); 111 c.setType(MailFilterCriteria.SIZE); 112 c.setCriteria(MailFilterCriteria.SIZE_BIGGER); 113 c.setPatternString(Integer.toString(size)); 114 115 return c; 116 } 117 118 public static MailFilterCriteria createSizeIsSmaller(int size) { 119 MailFilterCriteria c = new MailFilterCriteria(); 120 c.setType(MailFilterCriteria.SIZE); 121 c.setCriteria(MailFilterCriteria.SIZE_SMALLER); 122 c.setPatternString(Integer.toString(size)); 123 124 return c; 125 } 126 127 public static MailFilterCriteria createDateBefore(String datePattern) { 128 MailFilterCriteria c = new MailFilterCriteria(); 129 c.setType(MailFilterCriteria.DATE); 130 c.setCriteria(MailFilterCriteria.DATE_BEFORE); 131 c.setPatternString(datePattern); 132 133 return c; 134 } 135 136 public static MailFilterCriteria createDateAfter(String datePattern) { 137 MailFilterCriteria c = new MailFilterCriteria(); 138 c.setType(MailFilterCriteria.DATE); 139 c.setCriteria(MailFilterCriteria.DATE_AFTER); 140 c.setPatternString(datePattern); 141 142 return c; 143 } 144 145 151 public static MailFilterCriteria createColorIs(int rgb) { 152 MailFilterCriteria c = new MailFilterCriteria(); 153 c.setType(MailFilterCriteria.COLOR); 154 c.setCriteria(MailFilterCriteria.IS); 155 c.setPatternString(Integer.toString(rgb)); 156 157 return c; 158 } 159 160 public static MailFilterCriteria createAccountIs(int accountUid) { 161 MailFilterCriteria c = new MailFilterCriteria(); 162 c.setType(MailFilterCriteria.ACCOUNT); 163 c.setCriteria(MailFilterCriteria.IS); 164 c.setPatternString(Integer.toString(accountUid)); 165 166 return c; 167 } 168 169 public static MailFilterCriteria createUnreadMessages() { 170 MailFilterCriteria c = new MailFilterCriteria(); 171 c.setType(MailFilterCriteria.FLAGS); 172 c.setCriteria(MailFilterCriteria.IS_NOT); 173 c.setPatternString("Seen"); 174 175 return c; 176 } 177 178 public static MailFilterCriteria createFlaggedMessages() { 179 MailFilterCriteria c = new MailFilterCriteria(); 180 c.setType(MailFilterCriteria.FLAGS); 181 c.setCriteria(MailFilterCriteria.IS); 182 c.setPatternString("Flagged"); 183 184 return c; 185 } 186 187 public static MailFilterCriteria createExpungedMessages() { 188 MailFilterCriteria c = new MailFilterCriteria(); 189 c.setType(MailFilterCriteria.FLAGS); 190 c.setCriteria(MailFilterCriteria.IS); 191 c.setPatternString("Deleted"); 192 193 return c; 194 } 195 196 public static MailFilterCriteria createIsNotSeenMessages() { 197 MailFilterCriteria c = new MailFilterCriteria(); 198 c.setType(MailFilterCriteria.FLAGS); 199 c.setCriteria(MailFilterCriteria.IS_NOT); 200 c.setPatternString("Seen"); 201 202 return c; 203 } 204 205 public static MailFilterCriteria createIsSeenMessages() { 206 MailFilterCriteria c = new MailFilterCriteria(); 207 c.setType(MailFilterCriteria.FLAGS); 208 c.setCriteria(MailFilterCriteria.IS); 209 c.setPatternString("Seen"); 210 211 return c; 212 } 213 214 public static MailFilterCriteria createIsRecentMessages() { 215 MailFilterCriteria c = new MailFilterCriteria(); 216 c.setType(MailFilterCriteria.FLAGS); 217 c.setCriteria(MailFilterCriteria.IS); 218 c.setPatternString("Recent"); 219 220 return c; 221 } 222 223 public static MailFilterCriteria createSpamMessages() { 224 MailFilterCriteria c = new MailFilterCriteria(); 225 c.setType(MailFilterCriteria.FLAGS); 226 c.setCriteria(MailFilterCriteria.IS); 227 c.setPatternString("Spam"); 228 229 return c; 230 } 231 232 public static MailFilterCriteria createHighestPriority() { 233 MailFilterCriteria c = new MailFilterCriteria(); 234 c.setType(MailFilterCriteria.PRIORITY); 235 c.setCriteria(MailFilterCriteria.IS); 236 c.setPatternString("Highest"); 237 238 return c; 239 } 240 241 public static MailFilterCriteria createHighPriority() { 242 MailFilterCriteria c = new MailFilterCriteria(); 243 c.setType(MailFilterCriteria.PRIORITY); 244 c.setCriteria(MailFilterCriteria.IS); 245 c.setPatternString("High"); 246 247 return c; 248 } 249 250 public static MailFilterCriteria createNormalPriority() { 251 MailFilterCriteria c = new MailFilterCriteria(); 252 c.setType(MailFilterCriteria.PRIORITY); 253 c.setCriteria(MailFilterCriteria.IS); 254 c.setPatternString("Normal"); 255 256 return c; 257 } 258 259 public static MailFilterCriteria createLowestPriority() { 260 MailFilterCriteria c = new MailFilterCriteria(); 261 c.setType(MailFilterCriteria.PRIORITY); 262 c.setCriteria(MailFilterCriteria.IS); 263 c.setPatternString("Lowest"); 264 265 return c; 266 } 267 } | Popular Tags |