:type 'directory
:group 'elmo)
+(defvar elmo-localdir-lockfile-list nil)
+
;;; ELMO Local directory folder
(eval-and-compile
(luna-define-class elmo-localdir-folder (elmo-folder)
(luna-define-method elmo-folder-expand-msgdb-path ((folder
elmo-localdir-folder))
(expand-file-name
- (elmo-replace-string-as-filename
- (elmo-localdir-folder-dir-name-internal folder))
+ (mapconcat
+ 'identity
+ (mapcar
+ 'elmo-replace-string-as-filename
+ (split-string (elmo-localdir-folder-dir-name-internal folder)
+ "/"))
+ "/")
(expand-file-name ;;"localdir"
(symbol-name (elmo-folder-type-internal folder))
elmo-msgdb-dir)))
&optional
start-number)
(let ((temp-dir (elmo-folder-make-temp-dir folder))
- (cur-number (if start-number 0)))
+ (cur-number (or start-number 0)))
(dolist (number numbers)
(elmo-add-name-to-file
(expand-file-name
(int-to-string number)
(elmo-localdir-folder-directory-internal folder))
(expand-file-name
- (int-to-string (if start-number (incf cur-number) number))
- temp-dir)))
+ (int-to-string (if start-number cur-number number))
+ temp-dir))
+ (incf cur-number))
temp-dir))
(defun elmo-localdir-msgdb-create-entity (dir number)
(luna-define-method elmo-folder-list-subfolders ((folder elmo-localdir-folder)
&optional one-level)
- (mapcar
+ (elmo-mapcar-list-of-list
(lambda (x) (concat (elmo-folder-prefix-internal folder) x))
(elmo-list-subdirectories
(elmo-localdir-folder-path folder)
(delete-file filename)
t)))
-(luna-define-method elmo-message-fetch ((folder elmo-localdir-folder)
- number strategy
- &optional section outbuf unseen)
- ;; strategy, section, unseen is ignored.
- (if outbuf
- (with-current-buffer outbuf
- (erase-buffer)
- (when (file-exists-p (elmo-message-file-name folder number))
- (insert-file-contents-as-binary
- (elmo-message-file-name folder number))
- (elmo-delete-cr-buffer))
- t)
- (with-temp-buffer
- (when (file-exists-p (elmo-message-file-name folder number))
- (insert-file-contents-as-binary (elmo-message-file-name folder number))
- (elmo-delete-cr-buffer))
- (buffer-string))))
+(luna-define-method elmo-message-fetch-internal ((folder elmo-localdir-folder)
+ number strategy
+ &optional section unread)
+ (when (file-exists-p (elmo-message-file-name folder number))
+ (insert-file-contents-as-binary
+ (elmo-message-file-name folder number))))
(luna-define-method elmo-folder-list-messages-internal
((folder elmo-localdir-folder) &optional nohide)