Class: VtigerRuby::Api::Query
- Inherits:
-
Object
- Object
- VtigerRuby::Api::Query
- Defined in:
- lib/vtiger-ruby/api/query.rb
Instance Method Summary collapse
- #fetch(sql_query = nil) ⇒ Object
- #fetch_all ⇒ Object
-
#initialize(client, sql_query: nil) ⇒ Query
constructor
A new instance of Query.
Constructor Details
#initialize(client, sql_query: nil) ⇒ Query
Returns a new instance of Query.
4 5 6 7 |
# File 'lib/vtiger-ruby/api/query.rb', line 4 def initialize(client, sql_query: nil) @sql_query = sql_query @client = client end |
Instance Method Details
#fetch(sql_query = nil) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/vtiger-ruby/api/query.rb', line 20 def fetch(sql_query = nil) params = { 'operation': 'query', 'sessionName': @client.session_id, 'query': sql_query || sql_for_records_after(last_record_id) } @query_response = Faraday.get(@client.endpoint, params) do |req| req.headers['User-Agent'] = 'VtigerRuby' end JSON.parse(@query_response.body).dig('result') end |
#fetch_all ⇒ Object
9 10 11 12 13 14 15 16 17 18 |
# File 'lib/vtiger-ruby/api/query.rb', line 9 def fetch_all result = [] latest_fetch = fetch until latest_fetch.empty? result.concat(latest_fetch) latest_fetch = fetch end result end |