diff options
-rw-r--r-- | actioncable/lib/action_cable/engine.rb | 30 | ||||
-rw-r--r-- | railties/lib/rails/all.rb | 2 |
2 files changed, 31 insertions, 1 deletions
diff --git a/actioncable/lib/action_cable/engine.rb b/actioncable/lib/action_cable/engine.rb new file mode 100644 index 0000000000..e395500eed --- /dev/null +++ b/actioncable/lib/action_cable/engine.rb @@ -0,0 +1,30 @@ +require "rails" +require "action_cable" +require "action_cable/helpers/action_cable_helper" + +module ActionCable + class Railtie < Rails::Engine # :nodoc: + config.action_cable = ActiveSupport::OrderedOptions.new + config.eager_load_namespaces << ActionCable + + initializer "action_cable.helpers" do + ActiveSupport.on_load(:action_view) do + include ActionCable::Helpers::ActionCableHelper + end + end + + initializer "action_cable.logger" do + ActiveSupport.on_load(:action_cable) { self.logger ||= ::Rails.logger } + end + + initializer "action_cable.set_configs" do |app| + options = app.config.action_cable + + options.allowed_request_origins ||= "http://localhost:3000" if ::Rails.env.development? + + ActiveSupport.on_load(:action_cable) do + options.each { |k,v| send("#{k}=", v) } + end + end + end +end diff --git a/railties/lib/rails/all.rb b/railties/lib/rails/all.rb index 959c003e00..11f4d5c4bc 100644 --- a/railties/lib/rails/all.rb +++ b/railties/lib/rails/all.rb @@ -6,7 +6,7 @@ require "rails" action_view/railtie action_mailer/railtie active_job/railtie - action_cable/railtie + action_cable/engine rails/test_unit/railtie sprockets/railtie ).each do |railtie| |