aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails/engine/configurable.rb
diff options
context:
space:
mode:
Diffstat (limited to 'railties/lib/rails/engine/configurable.rb')
-rw-r--r--railties/lib/rails/engine/configurable.rb13
1 files changed, 12 insertions, 1 deletions
diff --git a/railties/lib/rails/engine/configurable.rb b/railties/lib/rails/engine/configurable.rb
index 9a370f0abb..0af01cace2 100644
--- a/railties/lib/rails/engine/configurable.rb
+++ b/railties/lib/rails/engine/configurable.rb
@@ -3,10 +3,12 @@ module Rails
module Configurable
def self.included(base)
base.extend ClassMethods
+ base.private_class_method :new
end
module ClassMethods
delegate :middleware, :root, :paths, :to => :config
+ delegate :call, :to => :instance
def config
@config ||= Engine::Configuration.new(find_root_with_flag("lib"))
@@ -15,6 +17,15 @@ module Rails
def inherited(base)
raise "You cannot inherit from a Rails::Engine child"
end
+
+ def instance
+ @instance ||= new
+ end
+
+ def endpoint(endpoint = nil)
+ @endpoint = endpoint if endpoint
+ @endpoint
+ end
end
def config
@@ -22,4 +33,4 @@ module Rails
end
end
end
-end \ No newline at end of file
+end