class DataPitcher::Executor
Public Class Methods
new(query)
click to toggle source
# File lib/data_pitcher/executor.rb, line 3 def initialize(query) @query = query end
Public Instance Methods
execute()
click to toggle source
# File lib/data_pitcher/executor.rb, line 7 def execute result(select_query) end
valid?()
click to toggle source
# File lib/data_pitcher/executor.rb, line 11 def valid? select_query true rescue => e false end
Private Instance Methods
connection()
click to toggle source
# File lib/data_pitcher/executor.rb, line 20 def connection ActiveRecord::Base.connection end
result(ar)
click to toggle source
# File lib/data_pitcher/executor.rb, line 39 def result(ar) DataPitcher::Result.new(ar.columns, ar.rows) end
select_query()
click to toggle source
# File lib/data_pitcher/executor.rb, line 33 def select_query with_sandbox do connection.exec_query(@query) end end
with_sandbox() { || ... }
click to toggle source
# File lib/data_pitcher/executor.rb, line 24 def with_sandbox result = nil connection.transaction do result = yield raise ActiveRecord::Rollback end result end