summaryrefslogtreecommitdiff
path: root/fake-service/lib/pixelated_service/sorted_mail.rb
diff options
context:
space:
mode:
Diffstat (limited to 'fake-service/lib/pixelated_service/sorted_mail.rb')
-rw-r--r--fake-service/lib/pixelated_service/sorted_mail.rb57
1 files changed, 0 insertions, 57 deletions
diff --git a/fake-service/lib/pixelated_service/sorted_mail.rb b/fake-service/lib/pixelated_service/sorted_mail.rb
deleted file mode 100644
index 555d4bd4..00000000
--- a/fake-service/lib/pixelated_service/sorted_mail.rb
+++ /dev/null
@@ -1,57 +0,0 @@
-module PixelatedService
- class SortedMail
- include Enumerable
-
- NEWEST_FIRST = lambda do |l,r|
- (r.headers[:date] || Time.now) <=> (l.headers[:date] || Time.now)
- end
-
- def initialize(&block)
- @mails = {}
- @mail_order = []
- @sort_procedure = block || NEWEST_FIRST
- end
-
- def []=(k, v)
- @mails[k] = v
- @mail_order << v
- sort_mail_order!
- v
- end
-
- def [](k)
- @mails[k]
- end
-
- def delete(k)
- v = @mails.delete(k)
- @mail_order.delete(v)
- v
- end
-
- def add_all(hs)
- hs.each do |h,v|
- @mails[h] = v
- @mail_order << v
- end
- sort_mail_order!
- self
- end
-
- def length
- @mails.length
- end
-
- def sort_mail_order!
- @mail_order.sort!(&@sort_procedure)
- @mail_order.compact!
- @mail_order.uniq!
- end
-
- def each
- @mail_order.each do |m|
- yield m
- end
- end
- end
-end