* elmo.el (elmo-folder-search): Defined. Fixed docstring.
[elisp/wanderlust.git] / elmo / elmo-sendlog.el
index 6a41196..d0362c7 100644 (file)
@@ -34,7 +34,6 @@
 (require 'elmo-map)
 
 (defvar elmo-sendlog-filename "sendlog")
-(defvar elmo-sendlog-buffer-name "*elmo-sendlog*")
 
 ;;; ELMO sendlog folder
 (eval-and-compile
@@ -48,7 +47,7 @@
 (luna-define-method elmo-folder-expand-msgdb-path ((folder elmo-sendlog-folder))
   (expand-file-name "sendlog"
                    (expand-file-name "internal"
-                                     elmo-msgdb-dir)))
+                                     elmo-msgdb-directory)))
 
 (luna-define-method elmo-map-folder-list-message-locations
   ((folder elmo-sendlog-folder))
 
 (defun elmo-sendlog-folder-list-message-locations (folder)
   (let ((filename (expand-file-name elmo-sendlog-filename
-                                   elmo-msgdb-dir))
+                                   elmo-msgdb-directory))
        result)
     (if (not (file-readable-p filename))
-        nil
+       nil
       (elmo-set-work-buf
        (as-binary-input-file
-        (insert-file-contents filename))
+       (insert-file-contents filename))
        (goto-char (point-min))
        (catch 'done
         (while t
            (elmo-msgdb-create-overview-entity-from-file
             (car numbers) (elmo-message-file-name folder (car numbers))))
       (if (null entity)
-         ()
+         (elmo-folder-set-killed-list-internal
+          folder
+          (nconc
+           (elmo-folder-killed-list-internal folder)
+           (list (car numbers))))
        (setq num (elmo-msgdb-overview-entity-get-number entity))
        (setq overview
              (elmo-msgdb-append-element
 (luna-define-method elmo-map-message-fetch ((folder elmo-sendlog-folder)
                                            location strategy
                                            &optional section unseen)
-  (insert-file-contents-as-binary 
-   (elmo-file-cache-get-path location)))
+  (let ((filename (elmo-file-cache-get-path location)))
+    (if (file-exists-p filename)
+       (insert-file-contents-as-binary filename)
+      (error "Now this message is not cached. Please s all"))))
 
 (luna-define-method elmo-folder-creatable-p ((folder elmo-sendlog-folder))
   nil)
 (luna-define-method elmo-folder-exists-p ((folder elmo-sendlog-folder))
   t)
 
-(luna-define-method elmo-folder-search ((folder elmo-sendlog-folder)
-                                       condition &optional from-msgs)
-  (let* ((msgs (or from-msgs (elmo-folder-list-messages folder)))
-        (number-list msgs)
-        (i 0)
-        (num (length msgs))
-        file
-        matched
-        case-fold-search)
-    (while msgs
-      (if (and (setq file (elmo-message-file-name folder (car msgs)))
-              (file-exists-p file)
-              (elmo-file-field-condition-match file
-                                               condition
-                                               (car msgs)
-                                               number-list))
-         (setq matched (nconc matched (list (car msgs)))))
-      (elmo-display-progress
-       'elmo-internal-folder-search "Searching..."
-       (/ (* (setq i (1+ i)) 100) num))
-      (setq msgs (cdr msgs)))
-    matched))
+(luna-define-method elmo-folder-delete-messages ((folder elmo-sendlog-folder)
+                                                numbers)
+  (let ((killed-list (elmo-folder-killed-list-internal folder)))
+    (dolist (number numbers)
+      (setq killed-list
+           (elmo-msgdb-set-as-killed killed-list number)))
+    (elmo-folder-set-killed-list-internal folder killed-list))
+  t)
 
 (luna-define-method elmo-message-file-p ((folder elmo-sendlog-folder) number)
   t)
 (require 'product)
 (product-provide (provide 'elmo-sendlog) (require 'elmo-version))
 
-;;; elmo-sendlog.el ends here
\ No newline at end of file
+;;; elmo-sendlog.el ends here