class Kentico::Kontent::Delivery::DeliveryClient

Executes requests against the Kentico Kontent Delivery API.

Attributes

use_preview[RW]

Public Class Methods

new(config) click to toggle source

Constructor. Accepts a hash with the options for client.

# File lib/delivery/client/delivery_client.rb, line 30
def initialize(config)
  @project_id = config.fetch(:project_id)
  @preview_key = config.fetch(:preview_key, nil)
  @secure_key = config.fetch(:secure_key, nil)
  @content_link_url_resolver = config.fetch(:content_link_url_resolver, nil)
  @inline_content_item_resolver = config.fetch(:inline_content_item_resolver, nil)
  @with_retry_policy = config.fetch(:with_retry_policy, true)
  self.use_preview = !@preview_key.nil?
end

Public Instance Methods

element(content_type, element) click to toggle source

Return a single element of a content type

# File lib/delivery/client/delivery_client.rb, line 166
def element(content_type, element)
  DeliveryQuery.new project_id: @project_id,
                    secure_key: @secure_key,
                    code_name: element,
                    content_type: content_type,
                    query_type: QUERY_TYPE_ELEMENT,
                    with_retry_policy: @with_retry_policy
end
item(code_name, query_parameters = []) click to toggle source

Return a single content item of the project

# File lib/delivery/client/delivery_client.rb, line 114
def item(code_name, query_parameters = [])
  q = DeliveryQuery.new project_id: @project_id,
                        secure_key: @secure_key,
                        code_name: code_name,
                        qp: query_parameters,
                        content_link_url_resolver: @content_link_url_resolver,
                        inline_content_item_resolver: @inline_content_item_resolver,
                        query_type: QUERY_TYPE_ITEMS,
                        with_retry_policy: @with_retry_policy
  q.use_preview = use_preview
  q.preview_key = @preview_key
  q
end
items(query_parameters = []) click to toggle source

Return all content items of the project

# File lib/delivery/client/delivery_client.rb, line 93
def items(query_parameters = [])
  q = DeliveryQuery.new project_id: @project_id,
                        secure_key: @secure_key,
                        qp: query_parameters,
                        content_link_url_resolver: @content_link_url_resolver,
                        inline_content_item_resolver: @inline_content_item_resolver,
                        query_type: QUERY_TYPE_ITEMS,
                        with_retry_policy: @with_retry_policy
  q.use_preview = use_preview
  q.preview_key = @preview_key
  q
end
items_feed(query_parameters = []) click to toggle source

Return a paginated feed of all content items of the project

# File lib/delivery/client/delivery_client.rb, line 73
def items_feed(query_parameters = [])
  q = DeliveryQuery.new project_id: @project_id,
                        secure_key: @secure_key,
                        qp: query_parameters,
                        content_link_url_resolver: @content_link_url_resolver,
                        inline_content_item_resolver: @inline_content_item_resolver,
                        query_type: QUERY_TYPE_ITEMS_FEED,
                        with_retry_policy: @with_retry_policy
  q.use_preview = use_preview
  q.preview_key = @preview_key
  q
end
languages() click to toggle source
# File lib/delivery/client/delivery_client.rb, line 175
def languages
  DeliveryQuery.new project_id: @project_id,
                    secure_key: @secure_key,
                    query_type: QUERY_TYPE_LANGUAGES,
                    with_retry_policy: @with_retry_policy
end
taxonomies(query_parameters = []) click to toggle source

Return all taxonomy groups of the project

# File lib/delivery/client/delivery_client.rb, line 135
def taxonomies(query_parameters = [])
  DeliveryQuery.new project_id: @project_id,
                    secure_key: @secure_key,
                    qp: query_parameters,
                    query_type: QUERY_TYPE_TAXONOMIES,
                    with_retry_policy: @with_retry_policy
end
taxonomy(code_name) click to toggle source

Return a single taxonomy group of the project

# File lib/delivery/client/delivery_client.rb, line 150
def taxonomy(code_name)
  DeliveryQuery.new project_id: @project_id,
                    secure_key: @secure_key,
                    code_name: code_name,
                    query_type: QUERY_TYPE_TAXONOMIES,
                    with_retry_policy: @with_retry_policy
end
type(code_name) click to toggle source

Return a single content type of the project

# File lib/delivery/client/delivery_client.rb, line 58
def type(code_name)
  DeliveryQuery.new project_id: @project_id,
                    secure_key: @secure_key,
                    code_name: code_name,
                    query_type: QUERY_TYPE_TYPES,
                    with_retry_policy: @with_retry_policy
end
types() click to toggle source

Return all content types of the project

# File lib/delivery/client/delivery_client.rb, line 44
def types
  DeliveryQuery.new project_id: @project_id,
                    secure_key: @secure_key,
                    query_type: QUERY_TYPE_TYPES,
                    with_retry_policy: @with_retry_policy
end