class DirectApi::AdsAdapter

Ads methods

Constants

AD_FIELD_NAMES
DYNAMIC_TEXT_AD_FIELD_NAMES
MOBILE_APP_AD_FIELD_NAMES
MOBILE_APP_IMAGE_AD_FIELD_NAMES
TEXT_AD_FIELD_NAMES
TEXT_IMAGE_AD_FIELD_NAMES

Public Instance Methods

build_request(client_settings, params = {}) click to toggle source
# File lib/direct_api/adapters/ads_adapter.rb, line 19
def build_request(client_settings, params = {})
  [:ads, build(params).merge(client_settings)]
end

Private Instance Methods

build(options = {}) click to toggle source
# File lib/direct_api/adapters/ads_adapter.rb, line 25
def build(options = {})
  {
    method: :get,
    params: extract_options(options)
  }
end
extract_options(p) click to toggle source
# File lib/direct_api/adapters/ads_adapter.rb, line 32
def extract_options(p)
  {
    SelectionCriteria: p[:params],
    FieldNames: p.fetch(:field_names, AD_FIELD_NAMES),
    TextAdFieldNames: p.fetch(:text_ad_field_names, TEXT_AD_FIELD_NAMES),
    MobileAppAdFieldNames: p.fetch(:mobile_app_ad_field_names, MOBILE_APP_AD_FIELD_NAMES),
    DynamicTextAdFieldNames: p.fetch(:dynamic_text_ad_field_names, DYNAMIC_TEXT_AD_FIELD_NAMES),
    TextImageAdFieldNames: p.fetch(:text_image_ad_field_names, TEXT_IMAGE_AD_FIELD_NAMES),
    MobileAppImageAdFieldNames:
      p.fetch(:mobile_app_image_ad_field_names, MOBILE_APP_IMAGE_AD_FIELD_NAMES)
  }
end