class Tennpipes::Generators::Mailer

Responsible for the generating mailers and message definitions.

Public Class Methods

banner() click to toggle source
source_root() click to toggle source
# File lib/tennpipes-init/generators/mailer.rb, line 10
def self.source_root; File.expand_path(File.dirname(__FILE__)); end

Public Instance Methods

create_mailer() click to toggle source

Execute mailer generation.

# File lib/tennpipes-init/generators/mailer.rb, line 32
def create_mailer
  self.destination_root = options[:root]
  if in_app_root?
    app = options[:app]
    check_app_existence(app)
    self.behavior    = :revoke if options[:destroy]
    @project_name    = options[:namespace].underscore.camelize
    @project_name    = fetch_project_name(app) if @project_name.empty?
    @app_name        = fetch_app_name(app)
    @actions         = actions.map(&:to_sym)
    @short_name      = name.to_s.gsub(/_mailer/i, '').underscore.downcase
    @mailer_basename = @short_name.underscore
    template "templates/mailer.rb.tt", destination_root(app, 'mailers', "#{@mailer_basename}.rb")
    empty_directory destination_root(app, 'views', 'mailers', @mailer_basename)
  else
    say 'You are not at the root of a Tennpipes application! (config/boot.rb not found)'
  end
end