class Validic::Client

Attributes

access_token[RW]
api_url[RW]
api_version[RW]
organization_id[RW]

Public Class Methods

new(options={}) click to toggle source

Create a new Validic::Client object

@params options

# File lib/validic/client.rb, line 46
def initialize(options={})
  @api_url          = options.fetch(:api_url, Validic.api_url)
  @api_version      = options.fetch(:api_version, Validic.api_version)
  @access_token     = options.fetch(:access_token, Validic.access_token)
  @organization_id  = options.fetch(:organization_id, Validic.organization_id)
  reload_config
end

Public Instance Methods

connection() click to toggle source

Create a Faraday::Connection object

@return [Faraday::Connection]

# File lib/validic/client.rb, line 58
def connection
  Faraday.new(url: @api_url, headers: default_headers, ssl: { verify: true }) do |faraday|
    # faraday.use FaradayMiddleware::Mashify
    faraday.use FaradayMiddleware::ParseJson, content_type: /\bjson$/
    faraday.use FaradayMiddleware::FollowRedirects
    faraday.adapter Faraday.default_adapter
  end
end

Private Instance Methods

default_headers() click to toggle source
# File lib/validic/client.rb, line 69
def default_headers
  {
    accept: 'application/json',
    content_type: 'application/json',
    user_agent: "Ruby Gem by Validic #{Validic::VERSION}"
  }
end
reload_config() click to toggle source
# File lib/validic/client.rb, line 77
def reload_config
  Validic.api_url = api_url
  Validic.api_version = api_version
  Validic.access_token = access_token
  Validic.organization_id = organization_id
end