aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/generators/rails/metal
diff options
context:
space:
mode:
authorJosé Valim <jose.valim@gmail.com>2009-06-23 19:10:42 +0200
committerJosé Valim <jose.valim@gmail.com>2009-06-23 19:10:42 +0200
commit4494a752c3c568c65fa899c54486153a1a5fa187 (patch)
tree60149451a075242bd36c5298ea9838d1d2d50f2f /railties/lib/generators/rails/metal
parent75fbd7393606b9b026418229eb3eb38542753d43 (diff)
downloadrails-4494a752c3c568c65fa899c54486153a1a5fa187.tar.gz
rails-4494a752c3c568c65fa899c54486153a1a5fa187.tar.bz2
rails-4494a752c3c568c65fa899c54486153a1a5fa187.zip
Change current sstructure.
Diffstat (limited to 'railties/lib/generators/rails/metal')
-rw-r--r--railties/lib/generators/rails/metal/USAGE8
-rw-r--r--railties/lib/generators/rails/metal/metal_generator.rb7
-rw-r--r--railties/lib/generators/rails/metal/templates/metal.rb12
3 files changed, 27 insertions, 0 deletions
diff --git a/railties/lib/generators/rails/metal/USAGE b/railties/lib/generators/rails/metal/USAGE
new file mode 100644
index 0000000000..123ec6c03f
--- /dev/null
+++ b/railties/lib/generators/rails/metal/USAGE
@@ -0,0 +1,8 @@
+Description:
+ Cast some metal!
+
+Examples:
+ `./script/generate metal poller`
+
+ This will create:
+ Metal: app/metal/poller.rb
diff --git a/railties/lib/generators/rails/metal/metal_generator.rb b/railties/lib/generators/rails/metal/metal_generator.rb
new file mode 100644
index 0000000000..ba062b30be
--- /dev/null
+++ b/railties/lib/generators/rails/metal/metal_generator.rb
@@ -0,0 +1,7 @@
+module Rails::Generators
+ class MetalGenerator < NamedBase
+ def create_file
+ template "metal.rb", "app/metal/#{file_name}.rb"
+ end
+ end
+end
diff --git a/railties/lib/generators/rails/metal/templates/metal.rb b/railties/lib/generators/rails/metal/templates/metal.rb
new file mode 100644
index 0000000000..e94982b69a
--- /dev/null
+++ b/railties/lib/generators/rails/metal/templates/metal.rb
@@ -0,0 +1,12 @@
+# Allow the metal piece to run in isolation
+require(File.dirname(__FILE__) + "/../../config/environment") unless defined?(Rails)
+
+class <%= class_name %>
+ def self.call(env)
+ if env["PATH_INFO"] =~ /^\/<%= file_name %>/
+ [200, {"Content-Type" => "text/html"}, ["Hello, World!"]]
+ else
+ [404, {"Content-Type" => "text/html"}, ["Not Found"]]
+ end
+ end
+end