aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Heinemeier Hansson <david@loudthinking.com>2015-12-16 21:05:13 +0100
committerDavid Heinemeier Hansson <david@loudthinking.com>2015-12-16 21:05:13 +0100
commit28035db109c35bc0bc40272c621ac3c777a62a72 (patch)
treeb4a8b11f5e96941ea629196e9e75657f44d9270c
parent6357437de4ea128b127dfb06fc790ee1f16270bd (diff)
downloadrails-28035db109c35bc0bc40272c621ac3c777a62a72.tar.gz
rails-28035db109c35bc0bc40272c621ac3c777a62a72.tar.bz2
rails-28035db109c35bc0bc40272c621ac3c777a62a72.zip
Generate all the ApplicationCable stubs by default, like all other Application* stubs
-rw-r--r--actioncable/lib/rails/generators/channel/channel_generator.rb6
-rw-r--r--actioncable/lib/rails/generators/channel/templates/application_cable/connection.rb23
-rw-r--r--actioncable/lib/rails/generators/channel/templates/assets/consumer.coffee6
-rw-r--r--railties/lib/rails/generators/rails/app/app_generator.rb2
-rw-r--r--railties/lib/rails/generators/rails/app/templates/app/assets/javascripts/cable.coffee7
-rw-r--r--railties/lib/rails/generators/rails/app/templates/app/channels/application_cable/channel.rb (renamed from actioncable/lib/rails/generators/channel/templates/application_cable/channel.rb)3
-rw-r--r--railties/lib/rails/generators/rails/app/templates/app/channels/application_cable/connection.rb5
-rw-r--r--railties/lib/rails/generators/rails/app/templates/config/routes.rb2
8 files changed, 16 insertions, 38 deletions
diff --git a/actioncable/lib/rails/generators/channel/channel_generator.rb b/actioncable/lib/rails/generators/channel/channel_generator.rb
index 8646a5460c..2f37d8055b 100644
--- a/actioncable/lib/rails/generators/channel/channel_generator.rb
+++ b/actioncable/lib/rails/generators/channel/channel_generator.rb
@@ -10,12 +10,6 @@ module Rails
def create_channel_file
template "channel.rb", File.join('app/channels', class_path, "#{file_name}_channel.rb")
template "assets/channel.coffee", File.join('app/assets/javascripts/channels', class_path, "#{file_name}.coffee")
-
- if self.behavior == :invoke
- template "application_cable/connection.rb", 'app/channels/application_cable/connection.rb'
- template "application_cable/channel.rb", 'app/channels/application_cable/channel.rb'
- template "assets/consumer.coffee", 'app/assets/javascripts/cable.coffee'
- end
end
protected
diff --git a/actioncable/lib/rails/generators/channel/templates/application_cable/connection.rb b/actioncable/lib/rails/generators/channel/templates/application_cable/connection.rb
deleted file mode 100644
index 2d1e38c572..0000000000
--- a/actioncable/lib/rails/generators/channel/templates/application_cable/connection.rb
+++ /dev/null
@@ -1,23 +0,0 @@
-# Be sure to restart your server when you modify this file. Action Cable runs in an EventMachine loop that does not support auto reloading.
-module ApplicationCable
- class Connection < ActionCable::Connection::Base
- # identified_by :current_user
- #
- # def connect
- # self.current_user = find_verified_user
- # end
- #
- # protected
- # def find_verified_user
- # if current_user = authenticate_with_cookies
- # current_user
- # else
- # reject_unauthorized_connection
- # end
- # end
- #
- # def authenticate_with_cookies
- # User.find(cookies.signed[:user_id])
- # end
- end
-end
diff --git a/actioncable/lib/rails/generators/channel/templates/assets/consumer.coffee b/actioncable/lib/rails/generators/channel/templates/assets/consumer.coffee
deleted file mode 100644
index b0c7baa957..0000000000
--- a/actioncable/lib/rails/generators/channel/templates/assets/consumer.coffee
+++ /dev/null
@@ -1,6 +0,0 @@
-#= require action_cable
-#= require_self
-#= require_tree ./channels
-
-@App ||= {}
-App.cable = ActionCable.createConsumer()
diff --git a/railties/lib/rails/generators/rails/app/app_generator.rb b/railties/lib/rails/generators/rails/app/app_generator.rb
index 16f30d0135..61c99ccd33 100644
--- a/railties/lib/rails/generators/rails/app/app_generator.rb
+++ b/railties/lib/rails/generators/rails/app/app_generator.rb
@@ -57,6 +57,8 @@ module Rails
directory 'app'
keep_file 'app/assets/images'
+ keep_file 'app/assets/javascripts/channels'
+
keep_file 'app/mailers'
keep_file 'app/models'
diff --git a/railties/lib/rails/generators/rails/app/templates/app/assets/javascripts/cable.coffee b/railties/lib/rails/generators/rails/app/templates/app/assets/javascripts/cable.coffee
new file mode 100644
index 0000000000..4166ea02f1
--- /dev/null
+++ b/railties/lib/rails/generators/rails/app/templates/app/assets/javascripts/cable.coffee
@@ -0,0 +1,7 @@
+#= require action_cable
+#= require_self
+#= require_tree ./channels
+
+# Turn on the cable connection by removing the comments from the statements below:
+# @App ||= {}
+# App.cable = ActionCable.createConsumer()
diff --git a/actioncable/lib/rails/generators/channel/templates/application_cable/channel.rb b/railties/lib/rails/generators/rails/app/templates/app/channels/application_cable/channel.rb
index 1d77819a0f..438c84154d 100644
--- a/actioncable/lib/rails/generators/channel/templates/application_cable/channel.rb
+++ b/railties/lib/rails/generators/rails/app/templates/app/channels/application_cable/channel.rb
@@ -1,6 +1,5 @@
# Be sure to restart your server when you modify this file. Action Cable runs in an EventMachine loop that does not support auto reloading.
module ApplicationCable
class Channel < ActionCable::Channel::Base
- # Logic shared between all channels
end
-end \ No newline at end of file
+end
diff --git a/railties/lib/rails/generators/rails/app/templates/app/channels/application_cable/connection.rb b/railties/lib/rails/generators/rails/app/templates/app/channels/application_cable/connection.rb
new file mode 100644
index 0000000000..965046f3c7
--- /dev/null
+++ b/railties/lib/rails/generators/rails/app/templates/app/channels/application_cable/connection.rb
@@ -0,0 +1,5 @@
+# Be sure to restart your server when you modify this file. Action Cable runs in an EventMachine loop that does not support auto reloading.
+module ApplicationCable
+ class Connection < ActionCable::Connection::Base
+ end
+end
diff --git a/railties/lib/rails/generators/rails/app/templates/config/routes.rb b/railties/lib/rails/generators/rails/app/templates/config/routes.rb
index 722b845472..3dfd415645 100644
--- a/railties/lib/rails/generators/rails/app/templates/config/routes.rb
+++ b/railties/lib/rails/generators/rails/app/templates/config/routes.rb
@@ -2,5 +2,5 @@ Rails.application.routes.draw do
# For details on the DSL available within this file, see http://guides.rubyonrails.org/routing.html
# Serve websocket cable requests in-process
- mount ActionCable.server => '/cable' if defined?(ApplicationCable)
+ mount ActionCable.server => '/cable'
end