Module: ActiveRecord::SqlMapper

Defined in:
lib/sql_mapper.rb

Defined Under Namespace

Classes: Context, DefaultExecStrategy, HashExecStrategy, QueryMapping, StructExecStrategy

Constant Summary collapse

EXEC_STRATEGIES =

Json execution strategy?

{
  :default => DefaultExecStrategy,
  Struct => StructExecStrategy,
  Hash => HashExecStrategy
}

Class Method Summary collapse

Class Method Details

.config(&block) ⇒ Object



94
95
96
# File 'lib/sql_mapper.rb', line 94

def self.config(&block)
  Context.instance.instance_exec &block
end

.fetch(opts = {}) ⇒ Object



98
99
100
101
102
103
104
# File 'lib/sql_mapper.rb', line 98

def self.fetch(opts={})
  sql, result_class = construct_sql_for opts
  strategy_class = (EXEC_STRATEGIES[result_class] || EXEC_STRATEGIES[:default])
  strategy = strategy_class.new(sql, result_class)
  strategy.do_fetch
  strategy.process_results
end

.fetch_one(opts = {}) ⇒ Object



106
107
108
109
# File 'lib/sql_mapper.rb', line 106

def self.fetch_one(opts={})
  results = fetch(opts)
  results[0]
end