Class: Readiness::Zendesk::Client
- Inherits:
-
Object
- Object
- Readiness::Zendesk::Client
- Defined in:
- lib/support_readiness/zendesk/client.rb
Overview
Defines the class Client within the module Readiness::Zendesk.
Instance Attribute Summary collapse
- #connection ⇒ Object readonly
- #upload_connection ⇒ Object readonly
Instance Method Summary collapse
-
#generate_connection(config) ⇒ Object
Used to generate a Faraday connection.
-
#generate_upload_connection(config) ⇒ Object
Used to generate a Faraday connection for uploads.
-
#initialize(config = Readiness::Zendesk::Configuration.new) ⇒ Client
constructor
Creates a new Client instance.
-
#retry_options(config) ⇒ Hash
Used to generate the retry options passed to Faraday via faraday-retry.
Constructor Details
#initialize(config = Readiness::Zendesk::Configuration.new) ⇒ Client
Creates a new Readiness::Zendesk::Client instance
28 29 30 31 |
# File 'lib/support_readiness/zendesk/client.rb', line 28 def initialize(config = Readiness::Zendesk::Configuration.new) @connection = generate_connection(config) @upload_connection = generate_upload_connection(config) end |
Instance Attribute Details
#connection ⇒ Object (readonly)
13 14 15 |
# File 'lib/support_readiness/zendesk/client.rb', line 13 def connection @connection end |
#upload_connection ⇒ Object (readonly)
13 14 15 |
# File 'lib/support_readiness/zendesk/client.rb', line 13 def upload_connection @upload_connection end |
Instance Method Details
#generate_connection(config) ⇒ Object
Used to generate a Faraday connection
57 58 59 60 61 62 63 64 |
# File 'lib/support_readiness/zendesk/client.rb', line 57 def generate_connection(config) Faraday.new(config.url) do |c| c.request :retry, (config) c.adapter Faraday.default_adapter c.headers['Content-Type'] = 'application/json' c.headers['Authorization'] = "Basic " + Base64.encode64("#{config.username}/token:#{config.token}").gsub("\n", '') end end |
#generate_upload_connection(config) ⇒ Object
Used to generate a Faraday connection for uploads
73 74 75 76 77 78 79 80 81 |
# File 'lib/support_readiness/zendesk/client.rb', line 73 def generate_upload_connection(config) Faraday.new(config.url) do |c| c.request :retry, (config) c.request :multipart c.request :url_encoded c.adapter Faraday.default_adapter c.headers['Authorization'] = "Basic " + Base64.encode64("#{config.username}/token:#{config.token}").gsub("\n", '') end end |
#retry_options(config) ⇒ Hash
Used to generate the retry options passed to Faraday via faraday-retry
40 41 42 43 44 45 46 47 48 |
# File 'lib/support_readiness/zendesk/client.rb', line 40 def (config) { max: config.retry_max, interval: config.retry_interval, interval_randomness: config.retry_randomness, backoff_factor: config.retry_backoff, exceptions: config.retry_exceptions } end |