aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails/application
diff options
context:
space:
mode:
authorYehuda Katz <wycats@gmail.com>2012-04-26 21:38:08 -0700
committerYehuda Katz <wycats@gmail.com>2012-04-26 21:38:27 -0700
commitadff4a706a5d7ad18ef05303461e1a0d848bd662 (patch)
tree1689940574a1efe2a51b5a24a5d609f41c30d023 /railties/lib/rails/application
parent770c809db4dd9039244abe27ebd247620e1e4911 (diff)
downloadrails-adff4a706a5d7ad18ef05303461e1a0d848bd662.tar.gz
rails-adff4a706a5d7ad18ef05303461e1a0d848bd662.tar.bz2
rails-adff4a706a5d7ad18ef05303461e1a0d848bd662.zip
Initial queue implementation
Diffstat (limited to 'railties/lib/rails/application')
-rw-r--r--railties/lib/rails/application/configuration.rb3
-rw-r--r--railties/lib/rails/application/finisher.rb7
2 files changed, 9 insertions, 1 deletions
diff --git a/railties/lib/rails/application/configuration.rb b/railties/lib/rails/application/configuration.rb
index 37297f0496..a36dad0e98 100644
--- a/railties/lib/rails/application/configuration.rb
+++ b/railties/lib/rails/application/configuration.rb
@@ -11,7 +11,7 @@ module Rails
:force_ssl, :helpers_paths, :logger, :log_formatter, :log_tags, :preload_frameworks,
:railties_order, :relative_url_root, :secret_token,
:serve_static_assets, :ssl_options, :static_cache_control, :session_options,
- :time_zone, :reload_classes_only_on_change, :use_schema_cache_dump
+ :time_zone, :reload_classes_only_on_change, :use_schema_cache_dump, :queue
attr_writer :log_level
attr_reader :encoding
@@ -43,6 +43,7 @@ module Rails
@autoflush_log = true
@log_formatter = ActiveSupport::Logger::SimpleFormatter.new
@use_schema_cache_dump = true
+ @queue = Queue
@assets = ActiveSupport::OrderedOptions.new
@assets.enabled = false
diff --git a/railties/lib/rails/application/finisher.rb b/railties/lib/rails/application/finisher.rb
index 002c6026e4..6475b381f4 100644
--- a/railties/lib/rails/application/finisher.rb
+++ b/railties/lib/rails/application/finisher.rb
@@ -93,6 +93,13 @@ module Rails
ActiveSupport::Dependencies.unhook!
end
end
+
+ initializer :activate_queue_consumer do |app|
+ if config.queue == Queue
+ consumer = Rails::Queueing::ThreadedConsumer.start(app.queue)
+ at_exit { consumer.shutdown }
+ end
+ end
end
end
end