Gnus Manual. Node: Mail-like Backends

PREVHooking New Backends Into Gnus UPBackend Interface next

10.5.2.6: Mail-like Backends

One of the things that separate the mail backends from the rest of the backends is the heavy dependence by the mail backends on common functions in `nnmail.el'. For instance, here's the definition of nnml-request-scan:

(deffoo nnml-request-scan (&optional group server)
  (setq nnml-article-file-alist nil)
  (nnmail-get-new-mail 'nnml 'nnml-save-nov nnml-directory group))

It simply calls nnmail-get-new-mail with a few parameters, and nnmail takes care of all the moving and splitting of the mail.

This function takes four parameters.

method

This should be a symbol to designate which backend is responsible for the call.

exit-function

This function should be called after the splitting has been performed.

temp-directory

Where the temporary files should be stored.

group

This optional argument should be a group name if the splitting is to be performed for one group only.

nnmail-get-new-mail will call backend-save-mail to save each article. backend-active-number will be called to find the article number assigned to this article.

The function also uses the following variables: backend-get-new-mail (to see whether to get new mail for this backend); and backend-group-alist and backend-active-file to generate the new active file. backend-group-alist should be a group-active alist, like this:

(("a-group" (1 . 10))
 ("some-group" (34 . 39)))
PREVHooking New Backends Into Gnus UPBackend Interface next