summaryrefslogtreecommitdiff
path: root/fake-service/lib/pixelated_service/mailset.rb
diff options
context:
space:
mode:
Diffstat (limited to 'fake-service/lib/pixelated_service/mailset.rb')
-rw-r--r--fake-service/lib/pixelated_service/mailset.rb84
1 files changed, 0 insertions, 84 deletions
diff --git a/fake-service/lib/pixelated_service/mailset.rb b/fake-service/lib/pixelated_service/mailset.rb
deleted file mode 100644
index a5218ed1..00000000
--- a/fake-service/lib/pixelated_service/mailset.rb
+++ /dev/null
@@ -1,84 +0,0 @@
-require 'set'
-
-module PixelatedService
- class Mailset
- DIR = "#{ENV['HOME']}/mailsets"
-
- class << self
- def create(name, number, tagging)
- ms = new name, number, tagging, nil
- ms.generate!
- ms
- end
-
- def load(name, observers)
- ms = new(name, -1, nil, observers)
- if ms.load!
- ms
- else
- nil
- end
- end
- end
-
- attr_reader :mails
- attr_reader :tags
-
- def initialize(name, number, tagging, observers)
- @name, @number, @tagging, @observers = name, number, tagging, observers
- end
-
- def generate!
- @persona = Generator.random_persona
- @tags = Generator.tags(Generator.ladder_distribution(4, 40))
-
- @mails = {}
- @tags = Set.new
- (0...(@number)).each do |i|
- res = if @tagging
- Generator.random_tagged_mail(@tags)
- else
- Generator.random_mail
- end
- @observers.mail_added res
- @tags.merge res.tags
- res.ident = i
- @mails[res.ident] = res
- end
- end
-
- def save!
- dir = File.join(DIR, @name)
- Dir.mkdir(dir) unless Dir.exists?(dir)
- File.open(File.join(dir, "persona.yml"), "w") do |f|
- f.write @persona.to_yaml
- end
-
- @mails.each do |(k, m)|
- nm = "mbox%08x" % m.ident
- File.open(File.join(dir, nm), "w") do |f|
- f.write m.to_s
- end
- end
- end
-
- def load!
- dir = File.join(DIR, @name)
- return false unless Dir.exists?(dir)
- @persona = YAML.load_file(File.join(dir, "persona.yml"))
- @mails = {}
- @ix = 0
- Dir["#{dir}/mbox*"].each do |f|
- File.open(f) do |fio|
- res = PixelatedService::Mail.read fio, @ix
- res.read = true if (res.tag_names.include?('sent') || res.tag_names.include?('drafts'))
- @mails[res.ident] = res
- @observers.mail_added res
- res.security_casing = SecurityCasingExamples::Case.case_from(res.ident.to_i)
- @ix += 1
- end
- end
- true
- end
- end
-end