From 52eef291c7319855dd98b57bb562537a9fc38ed8 Mon Sep 17 00:00:00 2001 From: okada Date: Wed, 16 Jan 2002 19:42:17 +0000 Subject: [PATCH] * elmo-dop.el (elmo-dop-queue-merge): Implement. (elmo-dop-merge-funcs): Remove. --- elmo/ChangeLog | 5 +++++ elmo/elmo-dop.el | 25 ++++++++++++++++++++++--- 2 files changed, 27 insertions(+), 3 deletions(-) diff --git a/elmo/ChangeLog b/elmo/ChangeLog index 9303ba4..d1ebe9d 100644 --- a/elmo/ChangeLog +++ b/elmo/ChangeLog @@ -1,3 +1,8 @@ +2002-01-17 Kenichi OKADA + + * elmo-dop.el (elmo-dop-queue-merge): Implement. + (elmo-dop-merge-funcs): Remove. + 2002-01-11 Hiroya Murata * elmo-util.el (elmo-file-cache-delete): Fixed last change; diff --git a/elmo/elmo-dop.el b/elmo/elmo-dop.el index c53104b..c63ec32 100644 --- a/elmo/elmo-dop.el +++ b/elmo/elmo-dop.el @@ -144,10 +144,29 @@ even an operation concerns the unplugged folder." (message ""))) count))) -(defvar elmo-dop-merge-funcs nil) (defun elmo-dop-queue-merge () - ;; XXXX Not implemented yet. - ) + (let ((queue elmo-dop-queue) + new-queue match-queue que) + (while (setq que (car queue)) + (if (and + (assq (elmo-dop-queue-method que) + elmo-dop-queue-method-name-alist) + (setq match-queue + (car (delete nil + (mapcar '(lambda (nqueue) + (if (and + (string= (elmo-dop-queue-fname que) + (elmo-dop-queue-fname nqueue)) + (string= (elmo-dop-queue-method que) + (elmo-dop-queue-method nqueue))) + nqueue)) + new-queue))))) + (setcar (elmo-dop-queue-arguments match-queue) + (append (car (elmo-dop-queue-arguments match-queue)) + (car (elmo-dop-queue-arguments que)))) + (setq new-queue (nconc new-queue (list que)))) + (setq queue (cdr queue)) ) + (setq elmo-dop-queue new-queue))) ;;; dop spool folder (defmacro elmo-dop-spool-folder (folder) -- 1.7.10.4