aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/initializer.rb
diff options
context:
space:
mode:
authorMarcel Molina <marcel@vernix.org>2007-03-03 02:53:06 +0000
committerMarcel Molina <marcel@vernix.org>2007-03-03 02:53:06 +0000
commit9f53e09eb9b4eb2e1711a8e92b7244a1f1301bbc (patch)
treef9144aa54dc622273e868e0803c1e82e1dc9f98d /railties/lib/initializer.rb
parent3d2c232d21ac526e61ca114a058a794bfa19dcbe (diff)
downloadrails-9f53e09eb9b4eb2e1711a8e92b7244a1f1301bbc.tar.gz
rails-9f53e09eb9b4eb2e1711a8e92b7244a1f1301bbc.tar.bz2
rails-9f53e09eb9b4eb2e1711a8e92b7244a1f1301bbc.zip
Move responsibility for ensuring that all registered gems were loaded from the FileSystemLocator into the Initializer once all locators have had a chance to load the gems they located. [Marcel Molina Jr.]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6292 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'railties/lib/initializer.rb')
-rw-r--r--railties/lib/initializer.rb11
1 files changed, 11 insertions, 0 deletions
diff --git a/railties/lib/initializer.rb b/railties/lib/initializer.rb
index 36797026c4..4e4e260056 100644
--- a/railties/lib/initializer.rb
+++ b/railties/lib/initializer.rb
@@ -192,6 +192,7 @@ module Rails
plugin.load
end
end
+ ensure_all_registered_plugins_are_loaded!
$LOAD_PATH.uniq!
end
@@ -339,6 +340,16 @@ module Rails
load(initializer)
end
end
+
+ private
+ def ensure_all_registered_plugins_are_loaded!
+ unless configuration.plugins.nil?
+ unless loaded_plugins == configuration.plugins
+ missing_plugins = configuration.plugins - loaded_plugins
+ raise LoadError, "Could not locate the following plugins: #{missing_plugins.to_sentence}"
+ end
+ end
+ end
end
# The Configuration class holds all the parameters for the Initializer and