module Earth::Model

Public Class Methods

extend_mining(target) click to toggle source
# File lib/earth/model.rb, line 20
def Model.extend_mining(target)
  if Earth.mine_original_sources
    path = File.join(File.dirname(target.source_file), File.basename(target.source_file, '.rb'), 'data_miner')
    require path if File.exist?(path + '.rb')
    target.data_miner_script.prepend_once :process, :create_table!
  else
    target.data_miner_script.prepend_once :sql, "Brighter Planet's reference data", "http://data.brighterplanet.com/#{target.to_s.underscore.pluralize}.sql"
  end
  target.data_miner_script.append_once :process, :run_data_miner_on_parent_associations!
end
extended(target) click to toggle source
# File lib/earth/model.rb, line 6
def Model.extended(target)
  target.extend SafeFinders
  target.extend Schema
  target.mattr_accessor :source_file
  self.registry << target
  target.source_file = caller.first.split(':').first

  extend_mining(target)
end
registry() click to toggle source
# File lib/earth/model.rb, line 16
def Model.registry
  @registry ||= []
end