KickJava   Java API By Example, From Geeks To Geeks.

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


1 //The contents of this file are subject to the Mozilla Public License Version 1.1
2
//(the "License"); you may not use this file except in compliance with the
3
//License. You may obtain a copy of the License at http://www.mozilla.org/MPL/
4
//
5
//Software distributed under the License is distributed on an "AS IS" basis,
6
//WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
7
//for the specific language governing rights and
8
//limitations under the License.
9
//
10
//The Original Code is "The Columba Project"
11
//
12
//The Initial Developers of the Original Code are Frederik Dietz and Timo Stich.
13
//Portions created by Frederik Dietz and Timo Stich are Copyright (C) 2003.
14
//
15
//All Rights Reserved.
16
package org.columba.core.filter;
17
18 import org.columba.api.plugin.IExtensionInterface;
19 import org.columba.core.folder.api.IFolder;
20
21 /**
22  * A filter is used to find a set of messages, which matches a certain search
23  * criteria.
24  * <p>
25  * The search criteria are specified in {@link Filter}.
26  * <p>
27  * Every FilterPlugin needs to subclass this class.
28  *
29  * @author fdietz
30  */

31 public abstract class AbstractFilter implements IExtensionInterface {
32     /**
33      * Constructor for AbstractFilter
34      *
35      */

36     public AbstractFilter() {
37     }
38
39     /**
40      *
41      * @param f
42      * filter containing the configuration
43      */

44     public abstract void setUp(IFilterCriteria f);
45
46     /**
47      *
48      * Execute the plugin
49      *
50      *
51      * @param folder
52      * AbstractMessageFolder on which the filter gets applied
53      * @param uid
54      * uid of Message object on the Statusbar
55      * @return boolean true if match, otherwise false
56      *
57      * @throws Exception
58      * pass exception one level higher to handle it in the correct
59      * place
60      */

61     public abstract boolean process(IFolder folder, Object JavaDoc uid)
62             throws Exception JavaDoc;
63 }
Popular Tags