KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > columba > core > filter > FilterCriteria


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.core.filter;
19
20 import org.columba.core.config.DefaultItem;
21 import org.columba.core.xml.XmlElement;
22
23 public class FilterCriteria extends DefaultItem implements IFilterCriteria {
24
25     // Condition
26
private static final String JavaDoc ELEMENT = "criteria";
27
28     private static final String JavaDoc CRITERIA = "criteria";
29
30     private static final String JavaDoc TYPE = "type";
31
32     private static final String JavaDoc PATTERN = "pattern";
33
34     private final String JavaDoc[] criteria = { "contains", "contains not", "is",
35             "is not", "begins with", "ends with", "before", "after", "smaller",
36             "bigger" };
37
38     public FilterCriteria() {
39         super(new XmlElement(FilterCriteria.ELEMENT));
40     }
41
42     public FilterCriteria(XmlElement root) {
43         super(root);
44     }
45
46     /* (non-Javadoc)
47    * @see org.columba.core.filter.IFilterCriteria#getCriteriaString()
48    */

49     public String JavaDoc getCriteriaString() {
50         return getRoot().getAttribute(FilterCriteria.CRITERIA);
51     }
52
53     /* (non-Javadoc)
54    * @see org.columba.core.filter.IFilterCriteria#setCriteria(int)
55    */

56     public void setCriteria(int c) {
57         setCriteriaString(criteria[c]);
58     }
59
60     /* (non-Javadoc)
61    * @see org.columba.core.filter.IFilterCriteria#getCriteria()
62    */

63     public int getCriteria() {
64         String JavaDoc condition = getCriteriaString();
65
66         int c = -1;
67
68         for (int i = 0; i < criteria.length; i++) {
69             if (criteria[i].equals(condition))
70                 c = i;
71         }
72
73         return c;
74     }
75
76     /* (non-Javadoc)
77    * @see org.columba.core.filter.IFilterCriteria#setCriteriaString(java.lang.String)
78    */

79     public void setCriteriaString(String JavaDoc s) {
80         getRoot().addAttribute(FilterCriteria.CRITERIA, s);
81     }
82
83     /* (non-Javadoc)
84    * @see org.columba.core.filter.IFilterCriteria#getTypeString()
85    */

86     public String JavaDoc getTypeString() {
87         return getRoot().getAttribute(FilterCriteria.TYPE);
88     }
89
90     /* (non-Javadoc)
91    * @see org.columba.core.filter.IFilterCriteria#setTypeString(java.lang.String)
92    */

93     public void setTypeString(String JavaDoc s) {
94         getRoot().addAttribute(FilterCriteria.TYPE, s);
95     }
96
97     /* (non-Javadoc)
98    * @see org.columba.core.filter.IFilterCriteria#getPatternString()
99    */

100     public String JavaDoc getPatternString() {
101         return getRoot().getAttribute(FilterCriteria.PATTERN);
102     }
103
104     /* (non-Javadoc)
105    * @see org.columba.core.filter.IFilterCriteria#setPatternString(java.lang.String)
106    */

107     public void setPatternString(String JavaDoc pattern) {
108         getRoot().addAttribute(FilterCriteria.PATTERN, pattern);
109     }
110 }
Popular Tags