Class: Restforce::Query

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/restforce/query.rb,
lib/restforce/query/builder.rb,
lib/restforce/query/version.rb,
lib/restforce/query/where_renderer.rb

Overview

This is the main entry point for starting a query Chain calls to: select, where, distinct, from, group_by, limit or select_distinct to use it

Defined Under Namespace

Classes: Builder, WhereRenderer

Constant Summary collapse

VERSION =
'0.1.1'.freeze

Instance Method Summary collapse

Constructor Details

#initialize(query_builder = Builder.new) ⇒ Query

Returns a new instance of Query.



11
12
13
14
# File 'lib/restforce/query.rb', line 11

def initialize(query_builder = Builder.new)
  @query_builder = query_builder
  @salesforce = Restforce.new
end

Instance Method Details

#eachObject



37
38
39
# File 'lib/restforce/query.rb', line 37

def each
  execute
end

#executeObject



30
31
32
33
34
35
# File 'lib/restforce/query.rb', line 30

def execute
  return @results if @results.present?
  query = @query_builder.to_s
  Rails.logger.debug(query)
  @results = @salesforce.query(query)
end

#findObject



41
42
43
44
45
# File 'lib/restforce/query.rb', line 41

def find
  @query_builder.limit(1)
  execute
  @results.first
end