class MonkeyMailer::Loaders::DataMapper
Public Class Methods
new(sources)
click to toggle source
# File lib/mm-data_mapper.rb, line 32 def initialize(sources) ::DataMapper::Logger.new(STDOUT, 'fatal') raise ArgumentError, 'One of the database names must be default' unless [:default, 'default'].any? {|source| sources.include? source} sources.each_pair do |name, opts| ::DataMapper.setup(name.to_sym, opts) end ::DataMapper.finalize end
Public Instance Methods
delete_email(email)
click to toggle source
# File lib/mm-data_mapper.rb, line 52 def delete_email(email) email.destroy end
find_emails(priority, quota)
click to toggle source
# File lib/mm-data_mapper.rb, line 42 def find_emails(priority, quota) emails = [] MonkeyMailer.configuration.loader_options.each_key do |database| new_emails = ::DataMapper.repository(database.to_sym) {MailQueue.all(:priority => priority, :limit => quota)} quota -= new_emails.size emails.concat(new_emails) end emails end