Class: Hawkular::Inventory::ResultFetcher

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/hawkular/inventory/inventory_api.rb

Overview

Lazy fetching results, based on Inventory “ResultSet” model

Instance Method Summary collapse

Constructor Details

#initialize(fetcher) ⇒ ResultFetcher

Returns a new instance of ResultFetcher.



109
110
111
# File 'lib/hawkular/inventory/inventory_api.rb', line 109

def initialize(fetcher)
  @fetcher = fetcher
end

Instance Method Details

#eachObject



113
114
115
116
117
118
119
120
121
122
# File 'lib/hawkular/inventory/inventory_api.rb', line 113

def each
  offset = 0
  loop do
    result_set = @fetcher.call(offset)
    results = result_set['results']
    results.each { |r| yield(r) }
    offset += results.length
    break if offset >= result_set['resultSize']
  end
end