mailer作成 その13

取り込んだメールの削除

単に取り込んだメールをテーブル(mails)から削除しただけでは、次回のメールのフェッチでmailsにないunique_idを持ったメールを再読み込みすることになって、メールの削除にならない。
そこで、unique_id(とauto_incrementされるid)だけを行に持ったunique_idsテーブルを作り、メールを新規に取り込んだら、そのunique_idをこの記録するように変更。
もっとやるとしたら、新しいメールを取り込んだときに、サーバ上に残されているメールたちのunique_idをすべて取り込んで、unique_idsテーブルにあって、取り込んだunique_idのリストにない、テーブルのエントリを削除するようにすると、unique_idsテーブルが大きくなり過ぎなくてよいかもしれない。
ちょっとやってみたのが、MailFetcherのcompact_unique_ids()。たぶん動くと思っているのだが、実際にテーブルからエントリを削除する処理はコメントアウトしてある。