Sha256: 148498cc04d8adb53e09f13ebf066605c8e97288ee4ab7ed0b1f2267b88e26aa

Contents?: true

Size: 975 Bytes

Versions: 8

Compression:

Stored size: 975 Bytes

Contents

require "pathname"
require "active_record"
require "active_record/version"

module ActiveRecord::Import
  AdapterPath = File.join File.expand_path(File.dirname(__FILE__)), "/active_record/adapters"

  # Loads the import functionality for a specific database adapter
  def self.require_adapter(adapter)
    require File.join(AdapterPath,"/abstract_adapter")
    require File.join(AdapterPath,"/#{adapter}_adapter")
  end

  # Loads the import functionality for the passed in ActiveRecord connection
  def self.load_from_connection(connection)
    import_adapter = "ActiveRecord::Import::#{connection.class.name.demodulize}::InstanceMethods"
    unless connection.class.ancestors.map(&:name).include?(import_adapter)
      config = connection.instance_variable_get :@config
      require_adapter config[:adapter]
    end
  end
end


this_dir = Pathname.new File.dirname(__FILE__)
require this_dir.join("import")
require this_dir.join("active_record/adapters/abstract_adapter")

Version data entries

8 entries across 8 versions & 2 rubygems

Version Path
activerecord-import-0.2.5 lib/activerecord-import/base.rb
activerecord-import-0.2.4 lib/activerecord-import/base.rb
Empact-activerecord-import-0.3.1 lib/activerecord-import/base.rb
Empact-activerecord-import-0.3.0 lib/activerecord-import/base.rb
activerecord-import-0.2.3 lib/activerecord-import/base.rb
activerecord-import-0.2.2 lib/activerecord-import/base.rb
activerecord-import-0.2.1 lib/activerecord-import/base.rb
activerecord-import-0.2.0 lib/activerecord-import/base.rb