Class: ZammadAPI::ListBase
- Inherits:
-
Object
- Object
- ZammadAPI::ListBase
- Includes:
- Enumerable, JsonHelper
- Defined in:
- lib/zammad_api/list_base.rb
Direct Known Subclasses
Instance Method Summary collapse
- #[](position) ⇒ Object
- #each(&block) ⇒ Object
-
#initialize(resource, transport, parameter = {}) ⇒ ListBase
constructor
A new instance of ListBase.
- #page(page, per_page, &block) ⇒ Object
- #page_next(&block) ⇒ Object
- #page_prev(&block) ⇒ Object
Methods included from JsonHelper
Constructor Details
#initialize(resource, transport, parameter = {}) ⇒ ListBase
Returns a new instance of ListBase.
8 9 10 11 12 13 14 15 16 17 |
# File 'lib/zammad_api/list_base.rb', line 8 def initialize(resource, transport, parameter = {}) @resource = resource @url = @resource.get_url @transport = transport @parameter = { page: 1, per_page: 10, expand: 'true', }.merge(parameter) end |
Instance Method Details
#[](position) ⇒ Object
19 20 21 22 23 24 25 |
# File 'lib/zammad_api/list_base.rb', line 19 def [](position) local_parameter = @parameter.merge( page: position + 1, per_page: 1 ) perform_request(local_parameter)[0] end |
#each(&block) ⇒ Object
43 44 45 |
# File 'lib/zammad_api/list_base.rb', line 43 def each(&block) fetch_and_yield_each(&block) end |
#page(page, per_page, &block) ⇒ Object
27 28 29 30 31 |
# File 'lib/zammad_api/list_base.rb', line 27 def page(page, per_page, &block) @parameter[:page] = page @parameter[:per_page] = per_page fetch_and_yield_each(&block) end |
#page_next(&block) ⇒ Object
33 34 35 36 |
# File 'lib/zammad_api/list_base.rb', line 33 def page_next(&block) @parameter[:page] += 1 fetch_and_yield_each(&block) end |
#page_prev(&block) ⇒ Object
38 39 40 41 |
# File 'lib/zammad_api/list_base.rb', line 38 def page_prev(&block) @parameter[:page] -= 1 fetch_and_yield_each(&block) end |