module Newsletterable::Model
Public Instance Methods
email()
click to toggle source
# File lib/newsletterable/model.rb, line 12 def email subscribable.nil? ? self.old_email : subscribable.email end
enqueue_subscription()
click to toggle source
# File lib/newsletterable/model.rb, line 16 def enqueue_subscription worker = Newsletterable.configuration.worker case worker when Symbol, String # Get worker from method in model self.send(worker) else # Get worker from lambda function if worker.respond_to?(:call) worker.call(self.id) # worker is already a Worker class, call perform_async # TODO: should we require perform_async, make it configurable or make this an adapter elsif worker.respond_to?(:perform_async) worker.perform_async(self.id) else raise ConfigurationError, "config.worker is nil or invalid." end end end