Class: Sidemash::Sdk::Pagination

Inherits:
Object
  • Object
show all
Defined in:
lib/sidemash/sdk/pagination.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(self_url, prev_url, next_url, started_time, nb_items_on_this_page, page, nb_items_per_page) ⇒ Pagination

Returns a new instance of Pagination.



30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
# File 'lib/sidemash/sdk/pagination.rb', line 30

def initialize(self_url,
               prev_url,
               next_url,
               started_time,
               nb_items_on_this_page,
               page,
               nb_items_per_page)
  @_type = 'Pagination'
  @self_url = self_url
  @prev_url = prev_url
  @next_url = next_url
  @started_time = started_time
  @nb_items_on_this_page = nb_items_on_this_page
  @page = page
  @nb_items_per_page = nb_items_per_page
end

Instance Attribute Details

#nb_items_on_this_pageObject (readonly)

Returns the value of attribute nb_items_on_this_page.



26
27
28
# File 'lib/sidemash/sdk/pagination.rb', line 26

def nb_items_on_this_page
  @nb_items_on_this_page
end

#nb_items_per_pageObject (readonly)

Returns the value of attribute nb_items_per_page.



28
29
30
# File 'lib/sidemash/sdk/pagination.rb', line 28

def nb_items_per_page
  @nb_items_per_page
end

#next_urlObject (readonly)

Returns the value of attribute next_url.



24
25
26
# File 'lib/sidemash/sdk/pagination.rb', line 24

def next_url
  @next_url
end

#pageObject (readonly)

Returns the value of attribute page.



27
28
29
# File 'lib/sidemash/sdk/pagination.rb', line 27

def page
  @page
end

#prev_urlObject (readonly)

Returns the value of attribute prev_url.



23
24
25
# File 'lib/sidemash/sdk/pagination.rb', line 23

def prev_url
  @prev_url
end

#self_urlObject (readonly)

Returns the value of attribute self_url.



22
23
24
# File 'lib/sidemash/sdk/pagination.rb', line 22

def self_url
  @self_url
end

#started_timeObject (readonly)

Returns the value of attribute started_time.



25
26
27
# File 'lib/sidemash/sdk/pagination.rb', line 25

def started_time
  @started_time
end

Class Method Details

._typeObject



47
48
49
# File 'lib/sidemash/sdk/pagination.rb', line 47

def self._type
  'Pagination'
end

.from_hash(h) ⇒ Object



92
93
94
95
96
97
98
99
100
# File 'lib/sidemash/sdk/pagination.rb', line 92

def self.from_hash(h)
  Pagination.new(h['self_url'],
                 h['prev_url'].nil? ? h['prev_url'] : nil,
                 h['next_url'].nil? ? h['next_url'] : nil,
                 UTCDateTime.from_hash(h['started_time']),
                 h['nb_items_on_this_page'],
                 h['page'],
                 h['nb_items_per_page'])
end

.from_json(js) ⇒ Object



51
52
53
54
# File 'lib/sidemash/sdk/pagination.rb', line 51

def self.from_json(js)
  h = JSON.parse(js)
  Pagination.from_hash(h)
end

.from_remote(h) ⇒ Object



82
83
84
85
86
87
88
89
90
# File 'lib/sidemash/sdk/pagination.rb', line 82

def self.from_remote(h)
  Pagination.new(h['selfUrl'],
                 h['prevUrl'].nil? ? h['prevUrl'] : nil,
                 h['nextUrl'].nil? ? h['nextUrl'] : nil,
                 UTCDateTime.from_remote(h['startedTime']),
                 h['nbItemsOnThisPage'],
                 h['page'],
                 h['nbItemsPerPage'])
end

Instance Method Details

#to_hashObject



69
70
71
72
73
74
75
76
77
78
79
80
# File 'lib/sidemash/sdk/pagination.rb', line 69

def to_hash
  result = {}
  result[:_type] = @_type
  result[:self_url] = @self_url
  result[:prev_url] = @prev_url unless @prev_url.nil?
  result[:next_url] = @next_url unless @next_url.nil?
  result[:started_time] = @started_time.to_hash
  result[:nb_items_on_this_page] = @nb_items_on_this_page
  result[:page] = @page
  result[:nb_items_per_page] = @nb_items_per_page
  result
end

#to_json(*a) ⇒ Object



102
103
104
# File 'lib/sidemash/sdk/pagination.rb', line 102

def to_json(*a)
  to_hash.to_json(*a)
end

#to_remoteObject



56
57
58
59
60
61
62
63
64
65
66
67
# File 'lib/sidemash/sdk/pagination.rb', line 56

def to_remote
  result = {}
  result[:_type] = @_type
  result[:selfUrl] = @self_url
  result[:prevUrl] = @prev_url unless @prev_url.nil?
  result[:nextUrl] = @next_url unless @next_url.nil?
  result[:startedTime] = @started_time.to_remote
  result[:nbItemsOnThisPage] = @nb_items_on_this_page
  result[:page] = @page
  result[:nbItemsPerPage] = @nb_items_per_page
  result
end

#to_sObject



106
107
108
109
110
111
112
113
114
# File 'lib/sidemash/sdk/pagination.rb', line 106

def to_s
  ('Pagination(self_url=' + @self_url +
              ', prev_url=' + @prev_url +
              ', next_url=' + @next_url +
              ', started_time=' + @started_time.to_s +
              ', nb_items_on_this_page=' + @nb_items_on_this_page +
              ', page=' + @page +
              ', nb_items_per_page=' + @nb_items_per_page + ')')
end