* bbdb-wl.el: merge from main trunk
[elisp/wanderlust.git] / elmo / elmo-cache.el
index 6631534..2824f85 100644 (file)
@@ -1,4 +1,4 @@
-;;; elmo-cache.el -- Cache modules for Elmo.
+;;; elmo-cache.el --- Cache modules for ELMO.
 
 ;; Copyright (C) 1998,1999,2000 Yuuichi Teranishi <teranisi@gohome.org>
 ;; Copyright (C) 2000 Kenichi OKADA <okada@opaopa.org>
 ;;
 
 ;;; Commentary:
-;; 
+;;
 
 ;;; Code:
-;; 
+;;
 (require 'elmo-vars)
 (require 'elmo-util)
 (require 'elmo)
 (require 'elmo-map)
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;; 
+;;
 ;; cache backend by Kenichi OKADA <okada@opaopa.org>
 ;;
 (eval-and-compile
     (elmo-cache-folder-set-directory-internal
      folder
      (expand-file-name (elmo-match-string 2 name)
-                      (expand-file-name elmo-cache-dirname elmo-msgdb-dir)))
+                      elmo-cache-directory))
     folder))
 
 (luna-define-method elmo-folder-expand-msgdb-path ((folder elmo-cache-folder))
   (expand-file-name (elmo-cache-folder-dir-name-internal folder)
                    (expand-file-name "internal/cache"
-                                     elmo-msgdb-dir)))
+                                     elmo-msgdb-directory)))
 
 (luna-define-method elmo-map-folder-list-message-locations
   ((folder elmo-cache-folder))
      (expand-file-name location
                       (elmo-cache-folder-directory-internal folder)))))
 
-(defsubst elmo-cache-folder-map-message-fetch (folder location strategy
-                                                     section outbuf unseen)
+(luna-define-method elmo-message-fetch-with-cache-process
+  ((folder elmo-cache-folder) number strategy &optional section unseen)
+  ;; disbable cache process
+  (elmo-message-fetch-internal folder number strategy section unseen))
+
+(luna-define-method elmo-map-message-fetch ((folder elmo-cache-folder)
+                                           location strategy
+                                           &optional section unseen)
   (let ((file (expand-file-name
               location
               (elmo-cache-folder-directory-internal folder))))
     (when (file-exists-p file)
-      (if outbuf
-         (with-current-buffer outbuf
-           (erase-buffer)
-           (insert-file-contents-as-binary file)
-           (elmo-delete-cr-buffer)
-           t)
-       (with-temp-buffer
-         (insert-file-contents-as-binary file)
-         (elmo-delete-cr-buffer)
-         (buffer-string))))))
-
-(luna-define-method elmo-map-message-fetch ((folder elmo-cache-folder)
-                                           location strategy &optional
-                                           section outbuf unseen)
-  (elmo-cache-folder-map-message-fetch folder location strategy
-                                      section outbuf unseen))
+      (insert-file-contents-as-binary file))))
 
 (luna-define-method elmo-folder-creatable-p ((folder elmo-cache-folder))
   nil)
 
+(luna-define-method elmo-folder-writable-p ((folder elmo-cache-folder))
+  t)
+
 (luna-define-method elmo-folder-exists-p ((folder elmo-cache-folder))
   t)
 
   ((folder elmo-cache-folder) unread-marks &optional mark-alist)
   t)
 
-(luna-define-method elmo-folder-list-importants-internal
-  ((folder elmo-cache-folder) important-mark)
-  t)
-
 (luna-define-method elmo-folder-unmark-important ((folder elmo-cache-folder)
                                                  numbers)
   t)