Part of spamfighter.core.rules View Source View In Hierarchy
Правило анализа сообщений может быть:
В случае функции правило должно иметь вид:
def rule(domain, message, arg1, arg2=33)
где:
domain
(spamfighter.interfaces.IDomain
)
- текущий домен;
message
(spamfighter.interfaces.IMessage
)
- обрабатываемое сообщение;
arg1
, arg2
- дополнительные
параметры правил анализа;
rule
).
Класс должен иметь следующий вид:
class Rule(object): def __init__(self, arg1, arg2=33): ... def analyze(domain, message): ...
Смысл полей аналогично случаю функции, именем правила будет имя класса.
Instance Variables | rules | хэш по имени зарегистрированных правил
(type: dict
) |
Method | __init__ | Конструктор. |
Method | registerRule | Добавить новое правило (зарегистрировать). |
Method | unregisterRule | Удалить ранее зарегистрированное правило. |
Method | instanciateRule | Инстанциировать правило, создать его экземпляр с указанными параметрами. |
Method | getRuleNames | Получить имена всех правил. |
Parameters | rule | новое правило
(type: func или class
) |
Raises | DuplicateRuleError | если правило с таким же именем уже было зарегистрировано |
Parameters | rule | новое правило
(type: func или class
) |
Raises | RuleNotFoundError | правило с указанным имененем не обнаружено |
Возвращает функцию, в которой должно остаться только два свободных параметра: домен и сообщение.
Parameters | name | имя правила
(type: str
) |
Returns | инстанциированное правило
(type: func
) | |
Raises | RuleNotFoundError | правило с указанным имененем не обнаружено |
Returns | список имен правил
(type: list(str)
) |