class Creditario::PaginatedCollection
Creditario::PaginatedCollection
¶ ↑
Representa una colección de recursos paginados, a los cuales se puede acceder mediante el atributo items
.
También contiene información relacionada a los recursos relacionados mediante el atributo links
.
Así como los cursores de la paginación, encontados en el atributo cursors
Attributes
cursors[R]
Información sobre el siguiente cursor utilizado en la paginación
items[R]
Arreglo de todos los recursos obtenidos de la API
links[R]
Links relacionados a la llamada realizada a la API
Public Class Methods
new(json_response = {}, item_class)
click to toggle source
Recibe el JSON parseado de la llamada ejecutada a la API
y lo procesa obteniendo así la colección de items de la clase específica a la que pertenecen, los links y los cursores de paginación.
# File lib/creditario/utils/paginated_collection.rb, line 31 def initialize(json_response = {}, item_class) @items = build_items(json_response.dig("data"), item_class) @links = json_response.dig("links") @cursors = json_response.dig("pagination", "cursors") end
Private Instance Methods
build_items(array, item_class)
click to toggle source
# File lib/creditario/utils/paginated_collection.rb, line 39 def build_items(array, item_class) array.map do |item| item_class.new(item) end end