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.spam.rules; 19 20 import org.columba.mail.folder.IMailbox; 21 22 23 /** 24 * Handcrafted rules which can be added to the spam filter engine. 25 * <p> 26 * See <a HREF="http://www.spamassassin.org/tests.html">spamassassin.org</a> for 27 * many nice tests. 28 * @author fdietz 29 */ 30 public interface Rule { 31 32 /** 33 * Get score of specific rule. 34 * 35 * @param folder selected folder 36 * @param uid selected message uid 37 * @return message score, meaning likelihood this message is spam 38 * (0. - 1.0) 39 * @throws Exception 40 */ 41 float score(IMailbox folder, Object uid) throws Exception; 42 43 String getName(); 44 } 45