Class: OpenApiSDK::Dub

Inherits:
Object
  • Object
show all
Extended by:
T::Sig
Defined in:
lib/open_api_sdk/dub.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client: nil, retry_config: nil, timeout_ms: nil, security: nil, security_source: nil, server_idx: nil, server_url: nil, url_params: nil) ⇒ Dub

Returns a new instance of Dub.



45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# File 'lib/open_api_sdk/dub.rb', line 45

def initialize(client: nil, retry_config: nil, timeout_ms: nil, security: nil, security_source: nil, server_idx: nil, server_url: nil, url_params: nil)

  connection_options = {
    request: {
      params_encoder: Faraday::FlatParamsEncoder
    }
  }
  connection_options[:request][:timeout] = (timeout_ms.to_f / 1000) unless timeout_ms.nil?

  client ||= Faraday.new(**connection_options) do |f|
    f.request :multipart, {}
    # f.response :logger, nil, { headers: true, bodies: true, errors: true }
  end
  
  if !server_url.nil?
    if !url_params.nil?
      server_url = Utils.template_url(server_url, url_params)
    end
  end

  server_idx = 0 if server_idx.nil?
  hooks = SDKHooks::Hooks.new
  @sdk_configuration = SDKConfiguration.new(
    client,
    hooks,
    retry_config,
    timeout_ms,
    security,
    security_source,
    server_url,
    server_idx
  )
  @sdk_configuration = hooks.sdk_init(config: @sdk_configuration)
  init_sdks
end

Instance Attribute Details

#analyticsObject

Returns the value of attribute analytics.



21
22
23
# File 'lib/open_api_sdk/dub.rb', line 21

def analytics
  @analytics
end

#bountiesObject

Returns the value of attribute bounties.



21
22
23
# File 'lib/open_api_sdk/dub.rb', line 21

def bounties
  @bounties
end

#commissionsObject

Returns the value of attribute commissions.



21
22
23
# File 'lib/open_api_sdk/dub.rb', line 21

def commissions
  @commissions
end

#customersObject

Returns the value of attribute customers.



21
22
23
# File 'lib/open_api_sdk/dub.rb', line 21

def customers
  @customers
end

#discount_codesObject

Returns the value of attribute discount_codes.



21
22
23
# File 'lib/open_api_sdk/dub.rb', line 21

def discount_codes
  @discount_codes
end

#domainsObject

Returns the value of attribute domains.



21
22
23
# File 'lib/open_api_sdk/dub.rb', line 21

def domains
  @domains
end

#embed_tokensObject

Returns the value of attribute embed_tokens.



21
22
23
# File 'lib/open_api_sdk/dub.rb', line 21

def embed_tokens
  @embed_tokens
end

#eventsObject

Returns the value of attribute events.



21
22
23
# File 'lib/open_api_sdk/dub.rb', line 21

def events
  @events
end

#foldersObject

Returns the value of attribute folders.



21
22
23
# File 'lib/open_api_sdk/dub.rb', line 21

def folders
  @folders
end

Returns the value of attribute links.



21
22
23
# File 'lib/open_api_sdk/dub.rb', line 21

def links
  @links
end

#partner_applicationsObject

Returns the value of attribute partner_applications.



21
22
23
# File 'lib/open_api_sdk/dub.rb', line 21

def partner_applications
  @partner_applications
end

#partnersObject

Returns the value of attribute partners.



21
22
23
# File 'lib/open_api_sdk/dub.rb', line 21

def partners
  @partners
end

#payoutsObject

Returns the value of attribute payouts.



21
22
23
# File 'lib/open_api_sdk/dub.rb', line 21

def payouts
  @payouts
end

#qr_codesObject

Returns the value of attribute qr_codes.



21
22
23
# File 'lib/open_api_sdk/dub.rb', line 21

def qr_codes
  @qr_codes
end

#tagsObject

Returns the value of attribute tags.



21
22
23
# File 'lib/open_api_sdk/dub.rb', line 21

def tags
  @tags
end

#trackObject

Returns the value of attribute track.



21
22
23
# File 'lib/open_api_sdk/dub.rb', line 21

def track
  @track
end

Instance Method Details

#get_url(base_url:, url_variables: nil) ⇒ Object



102
103
104
105
106
107
108
109
110
111
112
113
114
# File 'lib/open_api_sdk/dub.rb', line 102

def get_url(base_url:, url_variables: nil)
  sd_base_url, sd_options = @sdk_configuration.get_server_details

  if base_url.nil?
    base_url = sd_base_url
  end

  if url_variables.nil?
    url_variables = sd_options
  end

  return Utils.template_url base_url, url_variables
end

#init_sdksObject



82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
# File 'lib/open_api_sdk/dub.rb', line 82

def init_sdks
  @links = Links.new(@sdk_configuration)
  @analytics = Analytics.new(@sdk_configuration)
  @events = Events.new(@sdk_configuration)
  @tags = Tags.new(@sdk_configuration)
  @folders = Folders.new(@sdk_configuration)
  @domains = Domains.new(@sdk_configuration)
  @track = Track.new(@sdk_configuration)
  @customers = Customers.new(@sdk_configuration)
  @partners = Partners.new(@sdk_configuration)
  @partner_applications = PartnerApplications.new(@sdk_configuration)
  @discount_codes = DiscountCodes.new(@sdk_configuration)
  @commissions = Commissions.new(@sdk_configuration)
  @payouts = Payouts.new(@sdk_configuration)
  @embed_tokens = EmbedTokens.new(@sdk_configuration)
  @qr_codes = QRCodes.new(@sdk_configuration)
  @bounties = Bounties.new(@sdk_configuration)
end