Class: SpotifyWebApi::PagingObject

Inherits:
BaseModel
  • Object
show all
Defined in:
lib/spotify_web_api/models/paging_object.rb

Overview

PagingObject Model.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseModel

#to_hash, #to_json

Constructor Details

#initialize(href = nil, limit = nil, mnext = nil, offset = nil, previous = nil, total = nil) ⇒ PagingObject

Returns a new instance of PagingObject.



62
63
64
65
66
67
68
69
70
# File 'lib/spotify_web_api/models/paging_object.rb', line 62

def initialize(href = nil, limit = nil, mnext = nil, offset = nil,
               previous = nil, total = nil)
  @href = href
  @limit = limit
  @mnext = mnext
  @offset = offset
  @previous = previous
  @total = total
end

Instance Attribute Details

#hrefString

A link to the Web API endpoint returning the full result of the request

Returns:

  • (String)


14
15
16
# File 'lib/spotify_web_api/models/paging_object.rb', line 14

def href
  @href
end

#limitInteger

The maximum number of items in the response (as set in the query or by default).

Returns:

  • (Integer)


19
20
21
# File 'lib/spotify_web_api/models/paging_object.rb', line 19

def limit
  @limit
end

#mnextString

URL to the next page of items. ( ‘null` if none)

Returns:

  • (String)


23
24
25
# File 'lib/spotify_web_api/models/paging_object.rb', line 23

def mnext
  @mnext
end

#offsetInteger

The offset of the items returned (as set in the query or by default)

Returns:

  • (Integer)


27
28
29
# File 'lib/spotify_web_api/models/paging_object.rb', line 27

def offset
  @offset
end

#previousString

URL to the previous page of items. ( ‘null` if none)

Returns:

  • (String)


31
32
33
# File 'lib/spotify_web_api/models/paging_object.rb', line 31

def previous
  @previous
end

#totalInteger

The total number of items available to return.

Returns:

  • (Integer)


35
36
37
# File 'lib/spotify_web_api/models/paging_object.rb', line 35

def total
  @total
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/spotify_web_api/models/paging_object.rb', line 73

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  href = hash.key?('href') ? hash['href'] : nil
  limit = hash.key?('limit') ? hash['limit'] : nil
  mnext = hash.key?('next') ? hash['next'] : nil
  offset = hash.key?('offset') ? hash['offset'] : nil
  previous = hash.key?('previous') ? hash['previous'] : nil
  total = hash.key?('total') ? hash['total'] : nil

  # Create object from extracted values.
  PagingObject.new(href,
                   limit,
                   mnext,
                   offset,
                   previous,
                   total)
end

.namesObject

A mapping from model property names to API property names.



38
39
40
41
42
43
44
45
46
47
# File 'lib/spotify_web_api/models/paging_object.rb', line 38

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['href'] = 'href'
  @_hash['limit'] = 'limit'
  @_hash['mnext'] = 'next'
  @_hash['offset'] = 'offset'
  @_hash['previous'] = 'previous'
  @_hash['total'] = 'total'
  @_hash
end

.nullablesObject

An array for nullable fields



55
56
57
58
59
60
# File 'lib/spotify_web_api/models/paging_object.rb', line 55

def self.nullables
  %w[
    mnext
    previous
  ]
end

.optionalsObject

An array for optional fields



50
51
52
# File 'lib/spotify_web_api/models/paging_object.rb', line 50

def self.optionals
  []
end