01: // The contents of this file are subject to the Mozilla Public License Version
02: // 1.1
03: //(the "License"); you may not use this file except in compliance with the
04: //License. You may obtain a copy of the License at http://www.mozilla.org/MPL/
05: //
06: //Software distributed under the License is distributed on an "AS IS" basis,
07: //WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
08: //for the specific language governing rights and
09: //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.spam;
19:
20: import org.columba.api.plugin.IExtensionInterface;
21: import org.columba.mail.folder.IMailbox;
22:
23: public interface ISpamPlugin extends IExtensionInterface {
24:
25: /**
26: * Score message. Check if message is spam or non spam.
27: *
28: * @param mailbox
29: * @param uid
30: * @return
31: * @throws Exception
32: */
33: boolean scoreMessage(IMailbox mailbox, Object uid) throws Exception;
34:
35: /**
36: * Add this message to the token database as spam.
37: *
38: * @param mailbox
39: * @param uid
40: * @throws Exception
41: */
42: void trainMessageAsSpam(IMailbox mailbox, Object uid)
43: throws Exception;
44:
45: /**
46: * Add this message to the token database as ham.
47: *
48: * @param mailbox
49: * @param uid
50: * @throws Exception
51: */
52: void trainMessageAsHam(IMailbox mailbox, Object uid)
53: throws Exception;
54:
55: void save();
56:
57: void load();
58: }
|