mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Add Configuration#after_initialize for specifying a block to be executed after the framework is completely initialized.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@3547 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
parent
7139e2a0e1
commit
49fad6e6d5
2 changed files with 25 additions and 2 deletions
|
@ -1,5 +1,7 @@
|
|||
*SVN*
|
||||
|
||||
* Added Configuration#after_initialize for registering a block which gets called after the framework is fully initialized. Useful for things like per-environment configuration of plugins. [Michael Koziarski]
|
||||
|
||||
* Added check for RAILS_FRAMEWORK_ROOT constant that allows the Rails framework to be found in a different place than vendor/rails. Should be set in boot.rb. [DHH]
|
||||
|
||||
* Fixed that static requests could unlock the mutex guarding dynamic requests in the WEBrick servlet #3433 [tom@craz8.com]
|
||||
|
|
|
@ -101,6 +101,9 @@ module Rails
|
|||
|
||||
# Routing must be initialized after plugins to allow the former to extend the routes
|
||||
initialize_routing
|
||||
|
||||
# the framework is now fully initialized
|
||||
after_initialize
|
||||
end
|
||||
|
||||
# Set the <tt>$LOAD_PATH</tt> based on the value of
|
||||
|
@ -245,7 +248,7 @@ module Rails
|
|||
require('active_support/whiny_nil') if configuration.whiny_nils
|
||||
end
|
||||
|
||||
# Initialize framework-specific settings for each of the loaded frameworks
|
||||
# Initializes framework-specific settings for each of the loaded frameworks
|
||||
# (Configuration#frameworks). The available settings map to the accessors
|
||||
# on each of the corresponding Base classes.
|
||||
def initialize_framework_settings
|
||||
|
@ -258,6 +261,12 @@ module Rails
|
|||
end
|
||||
end
|
||||
|
||||
# Fires the user-supplied after_initialize block (Configuration#after_initialize)
|
||||
def after_initialize
|
||||
configuration.after_initialize_block.call if configuration.after_initialize_block
|
||||
end
|
||||
|
||||
|
||||
protected
|
||||
# Return a list of plugin paths within base_path. A plugin path is
|
||||
# a directory that contains either a lib directory or an init.rb file.
|
||||
|
@ -441,6 +450,18 @@ module Rails
|
|||
::RAILS_ENV
|
||||
end
|
||||
|
||||
# Sets a block which will be executed after rails has been fully initialized.
|
||||
# Useful for per-environment configuration which depends on the framework being
|
||||
# fully initialized.
|
||||
def after_initialize(&after_initialize_block)
|
||||
@after_initialize_block = after_initialize_block
|
||||
end
|
||||
|
||||
# Returns the block set in Configuration#after_initialize
|
||||
def after_initialize_block
|
||||
@after_initialize_block
|
||||
end
|
||||
|
||||
private
|
||||
def root_path
|
||||
::RAILS_ROOT
|
||||
|
|
Loading…
Reference in a new issue