Ruby on Rails | Screencasts | Download | Documentation | Weblog | Community | Source

Changeset 4312

Show
Ignore:
Timestamp:
04/29/06 20:20:22 (2 years ago)
Author:
marcel
Message:

Replace alias method chaining with Module#alias_method_chain. [Marcel Molina Jr.]

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/actionmailer/CHANGELOG

    r4310 r4312  
    11*SVN* 
     2 
     3* Replace alias method chaining with Module#alias_method_chain. [Marcel Molina Jr.]  
    24 
    35* Replace Ruby's deprecated append_features in favor of included. [Marcel Molina Jr.] 
  • trunk/actionmailer/lib/action_mailer/helpers.rb

    r4310 r4312  
    1212        # Wrap inherited to create a new master helper module for subclasses. 
    1313        class << self 
    14           alias_method :inherited_without_helper, :inherited 
    15           alias_method :inherited, :inherited_with_helper 
     14          alias_method_chain :inherited, :helper 
    1615        end 
    1716 
    1817        # Wrap initialize_template_class to extend new template class 
    1918        # instances with the master helper module. 
    20         alias_method :initialize_template_class_without_helper, :initialize_template_class 
    21         alias_method :initialize_template_class, :initialize_template_class_with_helper 
     19        alias_method_chain :initialize_template_class, :helper 
    2220      end 
    2321    end 
  • trunk/actionpack/CHANGELOG

    r4310 r4312  
    11*SVN* 
     2 
     3* Replace alias method chaining with Module#alias_method_chain. [Marcel Molina Jr.] 
    24 
    35* Replace Ruby's deprecated append_features in favor of included. [Marcel Molina Jr.] 
  • trunk/actionpack/lib/action_controller/benchmarking.rb

    r3580 r4312  
    99 
    1010      base.class_eval do 
    11         alias_method :perform_action_without_benchmark, :perform_action 
    12         alias_method :perform_action, :perform_action_with_benchmark 
    13  
    14         alias_method :render_without_benchmark, :render 
    15         alias_method :render, :render_with_benchmark 
     11        alias_method_chain :perform_action, :benchmark 
     12        alias_method_chain :render, :benchmark 
    1613      end 
    1714    end 
  • trunk/actionpack/lib/action_controller/components.rb

    r4079 r4312  
    5151       
    5252      base.class_eval do 
    53         alias_method :process_cleanup_without_components, :process_cleanup 
    54         alias_method :process_cleanup, :process_cleanup_with_components 
    55          
    56         alias_method :set_session_options_without_components, :set_session_options 
    57         alias_method :set_session_options, :set_session_options_with_components 
    58          
    59         alias_method :flash_without_components, :flash 
    60         alias_method :flash, :flash_with_components 
     53        alias_method_chain :process_cleanup, :components 
     54        alias_method_chain :set_session_options, :components 
     55        alias_method_chain :flash, :components 
    6156 
    6257        alias_method :component_request?, :parent_controller        
  • trunk/actionpack/lib/action_controller/filters.rb

    r4180 r4312  
    351351      def self.included(base) 
    352352        base.class_eval do 
    353           alias_method :perform_action_without_filters, :perform_action 
    354           alias_method :perform_action, :perform_action_with_filters 
    355  
    356           alias_method :process_without_filters, :process 
    357           alias_method :process, :process_with_filters 
    358  
    359           alias_method :process_cleanup_without_filters, :process_cleanup 
    360           alias_method :process_cleanup, :process_cleanup_with_filters 
     353          alias_method_chain :perform_action, :filters 
     354          alias_method_chain :process, :filters 
     355          alias_method_chain :process_cleanup, :filters 
    361356        end 
    362357      end 
  • trunk/actionpack/lib/action_controller/flash.rb

    r4079 r4312  
    2929 
    3030      base.class_eval do 
    31         alias_method :assign_shortcuts_without_flash, :assign_shortcuts 
    32         alias_method :assign_shortcuts, :assign_shortcuts_with_flash 
    33  
    34         alias_method :process_cleanup_without_flash, :process_cleanup 
    35         alias_method :process_cleanup, :process_cleanup_with_flash 
     31        alias_method_chain :assign_shortcuts, :flash 
     32        alias_method_chain :process_cleanup, :flash 
    3633      end 
    3734    end 
  • trunk/actionpack/lib/action_controller/helpers.rb

    r4310 r4312  
    1313        # Wrap inherited to create a new master helper module for subclasses. 
    1414        class << self 
    15           alias_method :inherited_without_helper, :inherited 
    16           alias_method :inherited, :inherited_with_helper 
     15          alias_method_chain :inherited, :helper 
    1716        end 
    1817      end 
  • trunk/actionpack/lib/action_controller/integration.rb

    r4292 r4312  
    318318        base.extend(ClassMethods) 
    319319        base.class_eval do 
    320           class <<self 
    321             alias_method :new_without_capture, :new 
    322             alias_method :new, :new_with_capture 
     320          class << self 
     321            alias_method_chain :new, :capture 
    323322          end 
    324323        end 
  • trunk/actionpack/lib/action_controller/layout.rb

    r4262 r4312  
    44      base.extend(ClassMethods) 
    55      base.class_eval do 
     6        # NOTE: Can't use alias_method_chain here because +render_without_layout+ is already 
     7        # defined as a publicly exposed method 
    68        alias_method :render_with_no_layout, :render 
    79        alias_method :render, :render_with_a_layout 
    810 
    911        class << self 
    10           alias_method :inherited_without_layout, :inherited 
    11           alias_method :inherited, :inherited_with_layout 
     12          alias_method_chain :inherited, :layout 
    1213        end 
    1314      end 
  • trunk/actionpack/lib/action_controller/rescue.rb

    r4310 r4312  
    1010      base.extend(ClassMethods) 
    1111      base.class_eval do 
    12         alias_method :perform_action_without_rescue, :perform_action 
    13         alias_method :perform_action, :perform_action_with_rescue 
     12        alias_method_chain :perform_action, :rescue 
    1413      end 
    1514    end 
  • trunk/actionpack/lib/action_controller/session_management.rb

    r3580 r4312  
    99    def self.included(base) 
    1010      base.extend(ClassMethods) 
    11  
    12       base.send :alias_method, :process_without_session_management_support, :process 
    13       base.send :alias_method, :process, :process_with_session_management_support 
    14  
    15       base.send :alias_method, :process_cleanup_without_session_management_support, :process_cleanup 
    16       base.send :alias_method, :process_cleanup, :process_cleanup_with_session_management_support 
     11       
     12      base.send :alias_method_chain, :process, :session_management_support 
     13      base.send :alias_method_chain, :process_cleanup, :session_management_support 
    1714    end 
    1815 
  • trunk/actionpack/lib/action_controller/test_process.rb

    r4246 r4312  
    1919    end 
    2020 
    21     alias_method :process_without_test, :process 
    22     alias_method :process, :process_with_test 
     21    alias_method_chain :process, :test 
    2322  end 
    2423 
  • trunk/actionwebservice/CHANGELOG

    r4310 r4312  
    11*SVN* 
     2 
     3* Replace alias method chaining with Module#alias_method_chain. [Marcel Molina Jr.] 
    24 
    35* Replace Ruby's deprecated append_features in favor of included. [Marcel Molina Jr.] 
  • trunk/actionwebservice/lib/action_web_service/container/action_controller_container.rb

    r4310 r4312  
    55        class << base 
    66          include ClassMethods 
    7           alias_method :inherited_without_api, :inherited 
    8           alias_method :inherited, :inherited_with_api 
    9           alias_method :web_service_api_without_require, :web_service_api 
    10           alias_method :web_service_api, :web_service_api_with_require 
     7          alias_method_chain :inherited, :api 
     8          alias_method_chain :web_service_api, :require 
    119        end 
    1210      end 
  • trunk/actionwebservice/lib/action_web_service/dispatcher/action_controller_dispatcher.rb

    r4310 r4312  
    88        class << base 
    99          include ClassMethods 
    10           alias_method :inherited_without_action_controller, :inherited 
    11           alias_method :inherited, :inherited_with_action_controller 
     10          alias_method_chain :inherited, :action_controller 
    1211        end 
    1312        base.class_eval do 
  • trunk/actionwebservice/lib/action_web_service/invocation.rb

    r4310 r4312  
    127127      def self.included(base) 
    128128        base.class_eval do 
    129           alias_method :perform_invocation_without_interception, :perform_invocation 
    130           alias_method :perform_invocation, :perform_invocation_with_interception 
     129          alias_method_chain :perform_invocation, :interception 
    131130        end 
    132131      end 
  • trunk/activerecord/CHANGELOG

    r4310 r4312  
    11*SVN* 
     2 
     3* Replace alias method chaining with Module#alias_method_chain. [Marcel Molina Jr.] 
    24 
    35* Replace Ruby's deprecated append_features in favor of included. [Marcel Molina Jr.] 
  • trunk/activerecord/lib/active_record/callbacks.rb

    r4310 r4312  
    176176        class << self 
    177177          include Observable 
    178           alias_method :instantiate_without_callbacks, :instantiate 
    179           alias_method :instantiate, :instantiate_with_callbacks 
    180         end 
    181  
    182         alias_method :initialize_without_callbacks, :initialize 
    183         alias_method :initialize, :initialize_with_callbacks 
    184  
    185         alias_method :create_or_update_without_callbacks, :create_or_update 
    186         alias_method :create_or_update, :create_or_update_with_callbacks 
    187  
    188         alias_method :valid_without_callbacks, :valid? 
    189         alias_method :valid?, :valid_with_callbacks 
    190  
    191         alias_method :create_without_callbacks, :create 
    192         alias_method :create, :create_with_callbacks 
    193  
    194         alias_method :update_without_callbacks, :update 
    195         alias_method :update, :update_with_callbacks 
    196  
    197         alias_method :destroy_without_callbacks, :destroy 
    198         alias_method :destroy, :destroy_with_callbacks 
     178          alias_method_chain :instantiate, :callbacks 
     179        end 
     180 
     181        [:initialize, :create_or_update, :valid?, :create, :update, :destroy].each do |method| 
     182          alias_method_chain method, :callbacks 
     183        end 
    199184      end 
    200185 
  • trunk/activerecord/lib/active_record/locking.rb

    r4310 r4312  
    2424    def self.included(base) #:nodoc: 
    2525      base.class_eval do 
    26         alias_method :update_without_lock, :update 
    27         alias_method :update, :update_with_lock 
     26        alias_method_chain :update, :lock 
    2827      end 
    2928    end 
  • trunk/activerecord/lib/active_record/timestamp.rb

    r4310 r4312  
    99    def self.included(base) # :nodoc: 
    1010      base.class_eval do 
    11         alias_method :create_without_timestamps, :create 
    12         alias_method :create, :create_with_timestamps 
    13  
    14         alias_method :update_without_timestamps, :update 
    15         alias_method :update, :update_with_timestamps 
     11        [:create, :update].each do |method| 
     12          alias_method_chain method, :timestamps 
     13        end 
    1614      end 
    1715    end 
  • trunk/activerecord/lib/active_record/transactions.rb

    r4310 r4312  
    1414 
    1515      base.class_eval do 
    16         alias_method :destroy_without_transactions, :destroy 
    17         alias_method :destroy, :destroy_with_transactions 
    18  
    19         alias_method :save_without_transactions, :save 
    20         alias_method :save, :save_with_transactions 
     16        [:destroy, :save].each do |method| 
     17          alias_method_chain method, :transactions 
     18        end 
    2119      end 
    2220    end 
  • trunk/activerecord/lib/active_record/validations.rb

    r4310 r4312  
    218218      base.extend ClassMethods 
    219219      base.class_eval do 
    220         alias_method :save_without_validation, :save 
    221         alias_method :save, :save_with_validation 
    222  
    223         alias_method :save_without_validation!, :save! 
    224         alias_method :save!, :save_with_validation! 
    225  
    226         alias_method :update_attribute_without_validation_skipping, :update_attribute 
    227         alias_method :update_attribute, :update_attribute_with_validation_skipping 
     220        alias_method_chain :save, :validation 
     221        alias_method_chain :save!, :validation!        
     222        alias_method_chain :update_attribute, :validation_skipping 
    228223      end 
    229224    end 
  • trunk/activesupport/CHANGELOG

    r4311 r4312  
    11*SVN* 
     2 
     3* Replace alias method chaining with Module#alias_method_chain. [Marcel Molina Jr.] 
    24 
    35* Strip out punctuation on predicates or bang methods being aliased with alias_method_chain since target?_without_feature is not a valid method name. Add tests for Module#alias_method_chain. [Marcel Molina Jr.] 
  • trunk/activesupport/lib/active_support/core_ext/time/calculations.rb

    r3887 r4312  
    44      # Enables the use of time calculations within Time itself 
    55      module Calculations 
    6         def self.append_features(base) #:nodoc: 
    7           super 
     6        def self.included(base) #:nodoc: 
    87          base.extend(ClassMethods) 
    98        end