Methods

Files

Class/Module Index [+]

Quicksearch

ArJdbc::QuotedPrimaryKeyExtension

Public Class Methods

extended(base) click to toggle source
# File lib/arjdbc/jdbc/quoted_primary_key.rb, line 3
def self.extended(base)
  #       Rails 3 method           Rails 2 method
  meth = [:arel_attributes_values, :attributes_with_quotes].detect do |m|
    base.private_instance_methods.include?(m.to_s)
  end
  pk_hash_key = "self.class.primary_key"
  pk_hash_value = '"?"'
  if meth == :arel_attributes_values
    pk_hash_key = "self.class.arel_table[#{pk_hash_key}]"
    pk_hash_value = "Arel::SqlLiteral.new(#{pk_hash_value})"
  end
  if meth
    base.module_eval           alias :#{meth}_pre_pk :#{meth}          def #{meth}(include_primary_key = true, *args) #:nodoc:            aq = #{meth}_pre_pk(include_primary_key, *args)            if connection.is_a?(ArJdbc::Oracle) || connection.is_a?(ArJdbc::Mimer)              aq[#{pk_hash_key}] = #{pk_hash_value} if include_primary_key && aq[#{pk_hash_key}].nil?            end            aq          end, __FILE__, __LINE__
  end
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.