KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > columba > mail > filter > MailFilterCriteria


1 // The contents of this file are subject to the Mozilla Public License Version
2
// 1.1
3
//(the "License"); you may not use this file except in compliance with the
4
//License. You may obtain a copy of the License at http://www.mozilla.org/MPL/
5
//
6
//Software distributed under the License is distributed on an "AS IS" basis,
7
//WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
8
//for the specific language governing rights and
9
//limitations under the License.
10
//
11
//The Original Code is "The Columba Project"
12
//
13
//The Initial Developers of the Original Code are Frederik Dietz and Timo
14
// Stich.
15
//Portions created by Frederik Dietz and Timo Stich are Copyright (C) 2003.
16
//
17
//All Rights Reserved.
18
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 /**
25  * @author fdietz
26  *
27  */

28 public class MailFilterCriteria extends FilterCriteria {
29
30     // header-item
31
private static final String JavaDoc 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 JavaDoc[] 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     /**
71      * @param root
72      */

73     public MailFilterCriteria(XmlElement root) {
74         super(root);
75     }
76
77     /**
78      * @see org.columba.core.filter.FilterCriteria#getType()
79      */

80     public int getType() {
81
82         int result = -1;
83
84         String JavaDoc 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 JavaDoc getHeaderfieldString() {
99         return getRoot().getAttribute(MailFilterCriteria.HEADERFIELD);
100     }
101
102     public void setHeaderfieldString(String JavaDoc s) {
103         getRoot().addAttribute(MailFilterCriteria.HEADERFIELD, s);
104     }
105
106 }
Popular Tags