class Kentico::Kontent::Delivery::Responses::DeliveryItemListingResponse

The response of a successful query for content items. See github.com/Kentico/kontent-delivery-sdk-ruby#listing-items

Public Class Methods

new(headers, body, query) click to toggle source
Calls superclass method
# File lib/delivery/responses/delivery_item_listing_response.rb, line 41
def initialize(headers, body, query)
  @response = JSON.parse(body)
  @content_link_url_resolver = query.content_link_url_resolver
  @inline_content_item_resolver = query.inline_content_item_resolver
  super 200,
    "Success, #{items.length} items returned",
    headers,
    JSON.generate(@response)
end

Public Instance Methods

items() click to toggle source

A collection of Kentico::Kontent::Delivery::ContentItem objects from a Kentico::Kontent::Delivery::DeliveryClient.items call.

# File lib/delivery/responses/delivery_item_listing_response.rb, line 26
def items
  @items unless @items.nil?
  linked_items_resolver = Kentico::Kontent::Delivery::Resolvers::LinkedItemResolver.new @response['modular_content'], @content_link_url_resolver, @inline_content_item_resolver
  items = []
  @response['items'].each do |n|
    items << Kentico::Kontent::Delivery::ContentItem.new(
      n,
      @content_link_url_resolver,
      @inline_content_item_resolver,
      linked_items_resolver
    )
  end
  @items = items
end
pagination() click to toggle source

Parses the 'pagination' JSON node of the response.

# File lib/delivery/responses/delivery_item_listing_response.rb, line 16
def pagination
  @pagination unless @pagination.nil?
  @pagination = Pagination.new @response['pagination']
end