class DigestEmail::PerformableDigest

Attributes

args[RW]
method_name[RW]
object[RW]

Public Class Methods

new(object, method_name, args) click to toggle source
# File lib/digest_email/performable_digest.rb, line 7
def initialize(object, method_name, args)
  raise NoMethodError, "undefined method `#{method_name}' for #{object.inspect}" unless object.respond_to?(method_name, true)

  if object.respond_to?(:new_record?) && object.new_record?
    raise(ArgumentError, 'Digest cannot be created for records before they\'ve been persisted')
  end

  self.object       = object
  self.args         = args
  self.method_name  = method_name.to_sym
end

Public Instance Methods

ensure_digest_group() click to toggle source
# File lib/digest_email/performable_digest.rb, line 27
def ensure_digest_group
  DigestEmailGroup.find_or_create_by_mailer_name_and_method_name mailer_name, method_name
end
mailer_name() click to toggle source
# File lib/digest_email/performable_digest.rb, line 19
def mailer_name
  object.class.to_s
end