diff options
author | José Valim <jose.valim@gmail.com> | 2010-01-23 01:29:29 +0100 |
---|---|---|
committer | José Valim <jose.valim@gmail.com> | 2010-01-23 01:29:29 +0100 |
commit | 98240c49b05093d6d14b9384a9bd695b58eefb59 (patch) | |
tree | 8db75608481547569fe86b105d7af30017617d69 /railties/lib/rails/initializable.rb | |
parent | c8cc8a987213bf90fe6922517d52befb7c0587a8 (diff) | |
download | rails-98240c49b05093d6d14b9384a9bd695b58eefb59.tar.gz rails-98240c49b05093d6d14b9384a9bd695b58eefb59.tar.bz2 rails-98240c49b05093d6d14b9384a9bd695b58eefb59.zip |
Get rid of initializers global and create i18n railtie.
Diffstat (limited to 'railties/lib/rails/initializable.rb')
-rw-r--r-- | railties/lib/rails/initializable.rb | 19 |
1 files changed, 5 insertions, 14 deletions
diff --git a/railties/lib/rails/initializable.rb b/railties/lib/rails/initializable.rb index 8fcb254590..cea4a0fdf7 100644 --- a/railties/lib/rails/initializable.rb +++ b/railties/lib/rails/initializable.rb @@ -19,12 +19,6 @@ module Rails @options[:after] end - def global - @options[:global] - end - - alias global? global - def run(*args) @context.instance_exec(*args, &block) end @@ -71,7 +65,7 @@ module Rails def initializers @initializers ||= begin - initializers = self.class.initializers_for(:instance) + initializers = self.class.initializers_chain Collection.new(initializers.map { |i| i.bind(self) }) end end @@ -81,26 +75,23 @@ module Rails @initializers ||= [] end - def initializers_for(scope = :global) + def initializers_chain initializers = Collection.new ancestors.reverse_each do |klass| next unless klass.respond_to?(:initializers) - initializers = initializers + klass.initializers.select { |i| - (scope == :global) == !!i.global? - } + initializers = initializers + klass.initializers end initializers end def initializer(name, opts = {}, &blk) raise ArgumentError, "A block must be passed when defining an initializer" unless blk - @initializers ||= [] - @initializers << Initializer.new(name, nil, opts, &blk) + initializers << Initializer.new(name, nil, opts, &blk) end def run_initializers(*args) return if @ran - initializers_for(:global).each do |initializer| + initializers_chain.each do |initializer| instance_exec(*args, &initializer.block) end @ran = true |