From ba49be1c3ab2088e6a88d66a4b9a90f2d3dc5111 Mon Sep 17 00:00:00 2001 From: Abdelkader Boudih Date: Sun, 29 Jun 2014 15:59:38 +0000 Subject: [feature] ActiveJob generator --- lib/rails/generators/active_job/job_generator.rb | 22 ++++++++++++++++++++++ lib/rails/generators/active_job/templates/job.rb | 9 +++++++++ 2 files changed, 31 insertions(+) create mode 100644 lib/rails/generators/active_job/job_generator.rb create mode 100644 lib/rails/generators/active_job/templates/job.rb (limited to 'lib/rails') diff --git a/lib/rails/generators/active_job/job_generator.rb b/lib/rails/generators/active_job/job_generator.rb new file mode 100644 index 0000000000..fe4af0d2cc --- /dev/null +++ b/lib/rails/generators/active_job/job_generator.rb @@ -0,0 +1,22 @@ +require 'rails/generators/named_base' + +module ActiveJob + module Generators # :nodoc: + class JobGenerator < Rails::Generators::NamedBase # :nodoc: + desc 'This generator creates an active job file at app/jobs' + + class_option :queue, type: :string, default: 'default', desc: 'The queue name for the generated job' + + def self.default_generator_root + File.dirname(__FILE__) + end + + check_class_collision suffix: 'Job' + + def create_job_file + template 'job.rb', File.join('app/jobs', class_path, "#{file_name}_job.rb") + end + + end + end +end \ No newline at end of file diff --git a/lib/rails/generators/active_job/templates/job.rb b/lib/rails/generators/active_job/templates/job.rb new file mode 100644 index 0000000000..6a21616d30 --- /dev/null +++ b/lib/rails/generators/active_job/templates/job.rb @@ -0,0 +1,9 @@ +<% module_namespacing do -%> +class <%= class_name %>Job < ActiveJob::Base + queue_as :<%= options[:queue] %> + + def perform + # Do something later + end +end +<% end -%> \ No newline at end of file -- cgit v1.2.3