X-Git-Url: http://cgit.sxemacs.org/?a=blobdiff_plain;f=lisp%2Fspam.el;h=33dbaaa1f0ce14e951fc4119cf8f9cc2cc4da4ce;hb=8c0d252681e082751a5925886facbcca21f87377;hp=3bce27625d067417fff025b8264b18537729530d;hpb=6a153e9d3c93691db6134c28a29bbc3b1353a906;p=gnus diff --git a/lisp/spam.el b/lisp/spam.el index 3bce27625..33dbaaa1f 100644 --- a/lisp/spam.el +++ b/lisp/spam.el @@ -1,7 +1,6 @@ ;;; spam.el --- Identifying spam -;; Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 -;; Free Software Foundation, Inc. +;; Copyright (C) 2002-2011 Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen ;; Maintainer: Ted Zlatanov @@ -69,9 +68,9 @@ ;; autoload gnus-registry (autoload 'gnus-registry-group-count "gnus-registry") -(autoload 'gnus-registry-add-group "gnus-registry") -(autoload 'gnus-registry-store-extra-entry "gnus-registry") -(autoload 'gnus-registry-fetch-extra "gnus-registry") +(autoload 'gnus-registry-get-id-key "gnus-registry") +(autoload 'gnus-registry-set-id-key "gnus-registry") +(autoload 'gnus-registry-handle-action "gnus-registry") ;; autoload dns-query (autoload 'dns-query "dns") @@ -1765,8 +1764,7 @@ See the Info node `(gnus)Fancy Mail Splitting' for more details." (when (and id split-return spam-log-to-registry) (when (zerop (gnus-registry-group-count id)) - (gnus-registry-add-group - id group subject sender)) + (gnus-registry-handle-action id nil group subject sender)) (unless registry-lookup (spam-log-processing-to-registry @@ -1895,13 +1893,10 @@ See the Info node `(gnus)Fancy Mail Splitting' for more details." (spam-process-type-valid-p type) (spam-classification-valid-p classification) (spam-backend-valid-p backend)) - (let ((cell-list (cdr-safe (gnus-registry-fetch-extra id type))) + (let ((cell-list (gnus-registry-get-id-key id type)) (cell (list classification backend group))) (push cell cell-list) - (gnus-registry-store-extra-entry - id - type - cell-list)) + (gnus-registry-set-id-key id type cell-list)) (gnus-error 7 @@ -1914,7 +1909,7 @@ See the Info node `(gnus)Fancy Mail Splitting' for more details." (when spam-log-to-registry (if (and (stringp id) (spam-process-type-valid-p type)) - (cdr-safe (gnus-registry-fetch-extra id type)) + (gnus-registry-get-id-key id type) (progn (gnus-error 7 @@ -1946,7 +1941,7 @@ See the Info node `(gnus)Fancy Mail Splitting' for more details." (spam-process-type-valid-p type) (spam-classification-valid-p classification) (spam-backend-valid-p backend)) - (let ((cell-list (cdr-safe (gnus-registry-fetch-extra id type))) + (let ((cell-list (gnus-registry-get-id-key id type)) found) (dolist (cell cell-list) (unless found @@ -1971,16 +1966,13 @@ See the Info node `(gnus)Fancy Mail Splitting' for more details." (spam-process-type-valid-p type) (spam-classification-valid-p classification) (spam-backend-valid-p backend)) - (let ((cell-list (cdr-safe (gnus-registry-fetch-extra id type))) + (let ((cell-list (gnus-registry-get-id-key id type)) new-cell-list found) (dolist (cell cell-list) (unless (and (eq classification (nth 0 cell)) (eq backend (nth 1 cell))) (push cell new-cell-list))) - (gnus-registry-store-extra-entry - id - type - new-cell-list)) + (gnus-registry-set-id-key id type new-cell-list)) (progn (gnus-error 7 (format "%s call with bad ID, type, spam-backend, or group" @@ -2268,51 +2260,44 @@ Uses `gnus-newsgroup-name' if category is nil (for ham registration)." (autoload 'spam-stat-save "spam-stat") (autoload 'spam-stat-split-fancy "spam-stat")) -(eval-and-compile - (when (condition-case nil - (let ((spam-stat-install-hooks nil)) - (require 'spam-stat)) - (file-error - (defalias 'spam-stat-register-ham-routine 'ignore) - (defalias 'spam-stat-register-spam-routine 'ignore) - nil)) +(require 'spam-stat) - (defun spam-check-stat () - "Check the spam-stat backend for the classification of this message" - (let ((spam-stat-split-fancy-spam-group spam-split-group) ; override - (spam-stat-buffer (buffer-name)) ; stat the current buffer - category return) - (spam-stat-split-fancy))) +(defun spam-check-stat () + "Check the spam-stat backend for the classification of this message" + (let ((spam-stat-split-fancy-spam-group spam-split-group) ; override + (spam-stat-buffer (buffer-name)) ; stat the current buffer + category return) + (spam-stat-split-fancy))) - (defun spam-stat-register-spam-routine (articles &optional unregister) - (dolist (article articles) - (let ((article-string (spam-get-article-as-string article))) - (with-temp-buffer - (insert article-string) - (if unregister - (spam-stat-buffer-change-to-non-spam) - (spam-stat-buffer-is-spam)))))) +(defun spam-stat-register-spam-routine (articles &optional unregister) + (dolist (article articles) + (let ((article-string (spam-get-article-as-string article))) + (with-temp-buffer + (insert article-string) + (if unregister + (spam-stat-buffer-change-to-non-spam) + (spam-stat-buffer-is-spam)))))) - (defun spam-stat-unregister-spam-routine (articles) - (spam-stat-register-spam-routine articles t)) +(defun spam-stat-unregister-spam-routine (articles) + (spam-stat-register-spam-routine articles t)) - (defun spam-stat-register-ham-routine (articles &optional unregister) - (dolist (article articles) - (let ((article-string (spam-get-article-as-string article))) - (with-temp-buffer - (insert article-string) - (if unregister - (spam-stat-buffer-change-to-spam) - (spam-stat-buffer-is-non-spam)))))) +(defun spam-stat-register-ham-routine (articles &optional unregister) + (dolist (article articles) + (let ((article-string (spam-get-article-as-string article))) + (with-temp-buffer + (insert article-string) + (if unregister + (spam-stat-buffer-change-to-spam) + (spam-stat-buffer-is-non-spam)))))) - (defun spam-stat-unregister-ham-routine (articles) - (spam-stat-register-ham-routine articles t)) +(defun spam-stat-unregister-ham-routine (articles) + (spam-stat-register-ham-routine articles t)) - (defun spam-maybe-spam-stat-load () - (when spam-use-stat (spam-stat-load))) +(defun spam-maybe-spam-stat-load () + (when spam-use-stat (spam-stat-load))) - (defun spam-maybe-spam-stat-save () - (when spam-use-stat (spam-stat-save))))) +(defun spam-maybe-spam-stat-save () + (when spam-use-stat (spam-stat-save))) ;;}}}