(elmo-pop3-sort-msgdb-by-original-number
folder
(elmo-pop3-msgdb-create-by-header
+ folder
process
numlist
flag-table
msgdb
(lambda (ent1 ent2 loc-alist)
(< (elmo-pop3-uidl-to-number
- (cdr (assq (elmo-msgdb-overview-entity-get-number ent1)
+ (cdr (assq (elmo-message-entity-number ent1)
loc-alist)))
(elmo-pop3-uidl-to-number
- (cdr (assq (elmo-msgdb-overview-entity-get-number ent2)
+ (cdr (assq (elmo-message-entity-number ent2)
loc-alist)))))
location-alist))
msgdb))
(elmo-get-hash-val (format "#%d" number)
elmo-pop3-size-hash))
-(defun elmo-pop3-msgdb-create-by-header (process numlist
- flag-table
- loc-alist)
+(defun elmo-pop3-msgdb-create-by-header (folder process numlist
+ flag-table
+ loc-alist)
(let ((tmp-buffer (get-buffer-create " *ELMO Overview TMP*")))
(with-current-buffer (process-buffer process)
(if loc-alist ; use uidl.
tmp-buffer process numlist)
(prog1
(elmo-pop3-msgdb-create-message
+ folder
tmp-buffer
process
(length numlist)
flag-table loc-alist)
(kill-buffer tmp-buffer)))))
-(defun elmo-pop3-msgdb-create-message (buffer
+(defun elmo-pop3-msgdb-create-message (folder
+ buffer
process
num
numlist
loc-alist)
(save-excursion
(let ((new-msgdb (elmo-make-msgdb))
- beg entity i number message-id gmark)
+ beg entity i number message-id flags)
(set-buffer buffer)
(elmo-set-buffer-multibyte default-enable-multibyte-characters)
(goto-char (point-min))
(save-restriction
(narrow-to-region beg (point))
(setq entity
- (elmo-msgdb-create-overview-from-buffer
- (car numlist)))
+ (elmo-msgdb-create-message-entity-from-buffer
+ new-msgdb (car numlist)))
(setq numlist (cdr numlist))
(when entity
(with-current-buffer (process-buffer process)
- (elmo-msgdb-overview-entity-set-size
+ (elmo-message-entity-set-field
entity
+ 'size
(string-to-number
(elmo-pop3-number-to-size
- (elmo-msgdb-overview-entity-get-number entity))))
+ (elmo-message-entity-number entity))))
(if (setq number
(car
(rassoc
(elmo-pop3-number-to-uidl
- (elmo-msgdb-overview-entity-get-number entity))
+ (elmo-message-entity-number entity))
loc-alist)))
- (elmo-msgdb-overview-entity-set-number entity number)))
- (setq message-id (elmo-message-entity-field entity 'message-id))
- (setq gmark (or (elmo-msgdb-global-mark-get message-id)
- (elmo-msgdb-mark
- (elmo-flag-table-get flag-table message-id)
- (elmo-file-cache-status
- (elmo-file-cache-get message-id))
- 'new)))
- (elmo-msgdb-append-entity new-msgdb entity gmark))))
+ (elmo-message-entity-set-number entity number)))
+ (setq message-id (elmo-message-entity-field entity 'message-id)
+ flags (elmo-flag-table-get flag-table message-id))
+ (elmo-global-flags-set flags folder number message-id)
+ (elmo-msgdb-append-entity new-msgdb entity flags))))
(when (> num elmo-display-progress-threshold)
(setq i (1+ i))
(if (or (zerop (% i 5)) (= i num))