Module: ActiveRecord::ConnectionAdapters::OracleEnhancedProcedures::ClassMethods
- Defined in:
- lib/active_record/connection_adapters/oracle_enhanced_procedures.rb
Instance Method Summary collapse
-
#create_method_name_before_custom_methods ⇒ Object
:nodoc:.
-
#destroy_method_name_before_custom_methods ⇒ Object
:nodoc:.
-
#set_create_method(&block) ⇒ Object
Specify custom create method which should be used instead of Rails generated INSERT statement.
-
#set_delete_method(&block) ⇒ Object
Specify custom delete method which should be used instead of Rails generated DELETE statement.
-
#set_update_method(&block) ⇒ Object
Specify custom update method which should be used instead of Rails generated UPDATE statement.
-
#update_method_name_before_custom_methods ⇒ Object
:nodoc:.
Instance Method Details
#create_method_name_before_custom_methods ⇒ Object
:nodoc:
55 56 57 58 59 60 61 62 63 |
# File 'lib/active_record/connection_adapters/oracle_enhanced_procedures.rb', line 55 def create_method_name_before_custom_methods #:nodoc: if private_method_defined?(:create_without_timestamps) && defined?(ActiveRecord::VERSION) && ActiveRecord::VERSION::STRING.to_f >= 2.3 :create_without_timestamps elsif private_method_defined?(:create_without_callbacks) :create_without_callbacks else :create end end |
#destroy_method_name_before_custom_methods ⇒ Object
:nodoc:
77 78 79 80 81 82 83 |
# File 'lib/active_record/connection_adapters/oracle_enhanced_procedures.rb', line 77 def destroy_method_name_before_custom_methods #:nodoc: if public_method_defined?(:destroy_without_callbacks) :destroy_without_callbacks else :destroy end end |
#set_create_method(&block) ⇒ Object
Specify custom create method which should be used instead of Rails generated INSERT statement. Provided block should return ID of new record. Example:
set_create_method do
plsql.employees_pkg.create_employee(
:p_first_name => first_name,
:p_last_name => last_name,
:p_employee_id => nil
)[:p_employee_id]
end
24 25 26 27 |
# File 'lib/active_record/connection_adapters/oracle_enhanced_procedures.rb', line 24 def set_create_method(&block) include_with_custom_methods self.custom_create_method = block end |
#set_delete_method(&block) ⇒ Object
Specify custom delete method which should be used instead of Rails generated DELETE statement. Example:
set_delete_method do
plsql.employees_pkg.delete_employee(
:p_employee_id => id
)
end
50 51 52 53 |
# File 'lib/active_record/connection_adapters/oracle_enhanced_procedures.rb', line 50 def set_delete_method(&block) include_with_custom_methods self.custom_delete_method = block end |
#set_update_method(&block) ⇒ Object
Specify custom update method which should be used instead of Rails generated UPDATE statement. Example:
set_update_method do
plsql.employees_pkg.update_employee(
:p_employee_id => id,
:p_first_name => first_name,
:p_last_name => last_name
)
end
38 39 40 41 |
# File 'lib/active_record/connection_adapters/oracle_enhanced_procedures.rb', line 38 def set_update_method(&block) include_with_custom_methods self.custom_update_method = block end |
#update_method_name_before_custom_methods ⇒ Object
:nodoc:
65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/active_record/connection_adapters/oracle_enhanced_procedures.rb', line 65 def update_method_name_before_custom_methods #:nodoc: if private_method_defined?(:update_without_dirty) :update_without_dirty elsif private_method_defined?(:update_without_timestamps) && defined?(ActiveRecord::VERSION) && ActiveRecord::VERSION::STRING.to_f >= 2.3 :update_without_timestamps elsif private_method_defined?(:update_without_callbacks) :update_without_callbacks else :update end end |