Class: KudagoClient::EntitiesList::BaseList

Inherits:
Object
  • Object
show all
Defined in:
lib/kudago_client/entities_list/base_list.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(count:, next_url:, previous_url:, results:, lang: "ru", item_params: {}) ⇒ BaseList

Returns a new instance of BaseList.



6
7
8
9
10
11
12
13
14
15
# File 'lib/kudago_client/entities_list/base_list.rb', line 6

def initialize(count:, next_url:, previous_url:, results:, lang: "ru", item_params: {})
  @count = count
  @next_url = next_url
  @previous_url = previous_url
  @lang = lang

  @items = results.map do |item|
    self.class.get_entity_class.new(**item, **item_params, lang: lang)
  end
end

Instance Attribute Details

#countObject (readonly)

Returns the value of attribute count.



4
5
6
# File 'lib/kudago_client/entities_list/base_list.rb', line 4

def count
  @count
end

#itemsObject (readonly)

Returns the value of attribute items.



4
5
6
# File 'lib/kudago_client/entities_list/base_list.rb', line 4

def items
  @items
end

#langObject (readonly)

Returns the value of attribute lang.



4
5
6
# File 'lib/kudago_client/entities_list/base_list.rb', line 4

def lang
  @lang
end

#next_urlObject (readonly)

Returns the value of attribute next_url.



4
5
6
# File 'lib/kudago_client/entities_list/base_list.rb', line 4

def next_url
  @next_url
end

#previous_urlObject (readonly)

Returns the value of attribute previous_url.



4
5
6
# File 'lib/kudago_client/entities_list/base_list.rb', line 4

def previous_url
  @previous_url
end

Class Method Details

.entity_class(class_name = nil) ⇒ Object



22
23
24
# File 'lib/kudago_client/entities_list/base_list.rb', line 22

def entity_class(class_name = nil)
  @entity_class = class_name
end

.get_entity_classObject



26
27
28
# File 'lib/kudago_client/entities_list/base_list.rb', line 26

def get_entity_class
  @entity_class || raise("Entity class not set for #{name}")
end

Instance Method Details

#idsObject



17
18
19
# File 'lib/kudago_client/entities_list/base_list.rb', line 17

def ids
  @items.map(&:id)
end