* gnus-registry.el (gnus-registry-unload-hook): uninstall all the
[gnus] / lisp / nndb.el
1 ;;; nndb.el --- nndb access for Gnus
2
3 ;; Copyright (C) 1997, 1998, 2000, 2003 Free Software Foundation, Inc.
4
5 ;; Author: Masanobu UMEDA <umerin@flab.flab.fujitsu.junet>
6 ;;         Kai Grossjohann <grossjohann@ls6.informatik.uni-dortmund.de>
7 ;;         Joe Hildebrand <joe.hildebrand@ilg.com>
8 ;;         David Blacka <davidb@rwhois.net>
9 ;; Keywords: news
10
11 ;; This file is part of GNU Emacs.
12
13 ;; GNU Emacs is free software; you can redistribute it and/or modify
14 ;; it under the terms of the GNU General Public License as published by
15 ;; the Free Software Foundation; either version 2, or (at your option)
16 ;; any later version.
17
18 ;; GNU Emacs is distributed in the hope that it will be useful,
19 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
20 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
21 ;; GNU General Public License for more details.
22
23 ;; You should have received a copy of the GNU General Public License
24 ;; along with GNU Emacs; see the file COPYING.  If not, write to the
25 ;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
26 ;; Boston, MA 02111-1307, USA.
27
28 ;;; Commentary:
29
30 ;;; This was based upon Kai Grossjohan's shamessly snarfed code and
31 ;;; further modified by Joe Hildebrand.  It has been updated for Red
32 ;;; Gnus.
33
34 ;; TODO:
35 ;;
36 ;; * Fix bug where server connection can be lost and impossible to regain
37 ;;   This hasn't happened to me in a while; think it was fixed in Rgnus
38 ;;
39 ;; * make it handle different nndb servers seemlessly
40 ;;
41 ;; * Optimize expire if FORCE
42 ;;
43 ;; * Optimize move (only expire once)
44 ;;
45 ;; * Deal with add/deletion of groups
46 ;;
47 ;; * make the backend TOUCH an article when marked as expireable (will
48 ;;   make article expire 'expiry' days after that moment).
49
50 ;;-
51 ;; Register nndb with known select methods.
52
53 (gnus-declare-backend "nndb" 'mail 'respool 'address 'prompt-address)
54
55 ;;; Code:
56
57 (require 'nnmail)
58 (require 'nnheader)
59 (require 'nntp)
60 (eval-when-compile (require 'cl))
61