-(defun nndraft-open-server (server &optional defs)
- (nnheader-change-server 'nndraft server defs)
- (unless (assq 'nndraft-directory defs)
- (setq nndraft-directory server))
- (cond
- ((not (file-exists-p nndraft-directory))
- (nndraft-close-server)
- (nnheader-report 'nndraft "No such file or directory: %s"
- nndraft-directory))
- ((not (file-directory-p (file-truename nndraft-directory)))
- (nndraft-close-server)
- (nnheader-report 'nndraft "Not a directory: %s" nndraft-directory))
- (t
- (nnheader-report 'nndraft "Opened server %s using directory %s"
- server nndraft-directory)
- t)))
-
-(defun nndraft-close-server (&optional server)
- (setq nndraft-current-server nil)
- t)
-
-(defun nndraft-server-opened (&optional server)
- (and nntp-server-buffer
- (get-buffer nntp-server-buffer)
- nndraft-current-server
- (equal nndraft-current-server server)))
-
-(defun nndraft-status-message (&optional server)
- nndraft-status-string)
-
-(defun nndraft-request-article (id &optional group server buffer)
+(deffoo nndraft-request-article (id &optional group server buffer)
+ (nndraft-possibly-change-group group)