Sha256: 05320bb0a14db89b78fdd26569306e6d6395bc4b65c3c9304dc59b04d9658512

Contents?: true

Size: 939 Bytes

Versions: 14

Compression:

Stored size: 939 Bytes

Contents

module SplitIoClient
  module Api
    class Client
      def call_api(path, config, api_key, params = {})
        api_client.get(config.base_uri + path, params) do |req|
          req.headers['Authorization'] = 'Bearer ' + api_key
          req.headers['SplitSDKVersion'] = SplitIoClient::SplitFactory.sdk_version
          req.headers['SplitSDKMachineName'] = config.machine_name
          req.headers['SplitSDKMachineIP'] = config.machine_ip
          req.headers['Accept-Encoding'] = 'gzip'

          req.options.open_timeout = config.connection_timeout
          req.options.timeout = config.read_timeout

          config.logger.debug("GET #{config.base_uri + path}") if config.debug_enabled
        end
      end

      private

      def api_client
        @api_client ||= Faraday.new do |builder|
          builder.use FaradayMiddleware::Gzip
          builder.adapter :net_http_persistent
        end
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
splitclient-rb-3.1.0.pre.rc12 lib/engine/api/client.rb
splitclient-rb-3.1.0.pre.rc11 lib/engine/api/client.rb
splitclient-rb-3.1.0.pre.rc10 lib/engine/api/client.rb
splitclient-rb-3.1.0.pre.rc9 lib/engine/api/client.rb
splitclient-rb-3.1.0.pre.rc8 lib/engine/api/client.rb
splitclient-rb-3.1.0.pre.rc7 lib/engine/api/client.rb
splitclient-rb-3.1.0.pre.rc6 lib/engine/api/client.rb
splitclient-rb-3.1.0.pre.rc5 lib/engine/api/client.rb
splitclient-rb-3.1.0.pre.rc4 lib/engine/api/client.rb
splitclient-rb-3.1.0.pre.rc2 lib/engine/api/client.rb
splitclient-rb-3.0.3 lib/engine/api/client.rb
splitclient-rb-3.0.3.pre.rc2 lib/engine/api/client.rb
splitclient-rb-3.0.3.pre.rc1 lib/engine/api/client.rb
splitclient-rb-3.0.2 lib/engine/api/client.rb