Class: Ebisu::ItemSearchResponse

Inherits:
Object
  • Object
show all
Defined in:
lib/ebisu/models/item_search_response.rb

Overview

response wrapper

Instance Method Summary collapse

Constructor Details

#initialize(resp) ⇒ ItemSearchResponse

Returns a new instance of ItemSearchResponse.



23
24
25
# File 'lib/ebisu/models/item_search_response.rb', line 23

def initialize(resp)
  @original_response = resp
end

Instance Method Details

#[](key) ⇒ Object



27
28
29
# File 'lib/ebisu/models/item_search_response.rb', line 27

def [](key)
  @original_response[key]
end

#first_result_positionInteger

Returns 最初のデータが何個目にあたるか(最初=1).

Returns:

  • (Integer)

    最初のデータが何個目にあたるか(最初=1)



46
47
48
# File 'lib/ebisu/models/item_search_response.rb', line 46

def first_result_position
  result_set['firstResultPosition'].to_i
end

#hitsArray<Ebisu::Item>

Returns 検索結果のアイテムのリスト.

Returns:

  • (Array<Ebisu::Item>)

    検索結果のアイテムのリスト



51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# File 'lib/ebisu/models/item_search_response.rb', line 51

def hits
  result_hit = result_set['Result']['Hit']
  case result_hit
  when Array
    result_hit.map{|hit| Ebisu::Item.new(hit)}
  when Hash
    # 結果がないとき
    if result_hit['index'].to_i == 0
      [].map{|hit| Ebisu::Item.new(hit)}

    # 結果が1件だけのとき
    else
      [result_hit].map{|hit| Ebisu::Item.new(hit)}
    end
  when NilClass
    [].map{|hit| Ebisu::Item.new(hit)}
  end
end

#result_setObject



31
32
33
# File 'lib/ebisu/models/item_search_response.rb', line 31

def result_set
  @original_response['ResultSet']
end

#total_results_availableInteger

Returns 検索総HIT数.

Returns:

  • (Integer)

    検索総HIT数



36
37
38
# File 'lib/ebisu/models/item_search_response.rb', line 36

def total_results_available
  result_set['totalResultsAvailable'].to_i
end

#total_results_returnedInteger

Returns 返された値の個数.

Returns:

  • (Integer)

    返された値の個数



41
42
43
# File 'lib/ebisu/models/item_search_response.rb', line 41

def total_results_returned
  result_set['totalResultsReturned'].to_i
end