Class: Mindee::V2::HTTP::ApiV2Settings
- Inherits:
-
Object
- Object
- Mindee::V2::HTTP::ApiV2Settings
- Defined in:
- lib/mindee/v2/http/api_v2_settings.rb
Overview
API client for version 2.
Constant Summary collapse
- MINDEE_V2_API_KEY_ENV_NAME =
V2 API key's default environment key name.
'MINDEE_V2_API_KEY'- MINDEE_V2_API_KEY_DEFAULT =
V2 API key's default value.
nil- MINDEE_V2_BASE_URL_ENV_NAME =
V2 base URL default environment key name.
'MINDEE_V2_BASE_URL'- MINDEE_V2_BASE_URL_DEFAULT =
V2 base URL default value.
'https://api-v2.mindee.net'- MINDEE_V2_REQUEST_TIMEOUT_ENV_NAME =
HTTP request timeout default environment key name.
'MINDEE_V2_REQUEST_TIMEOUT'- MINDEE_V2_TIMEOUT_DEFAULT =
HTTP request timeout default value.
120- USER_AGENT =
Default value for the user agent (same as V1).
"mindee-api-ruby@v#{Mindee::VERSION} ruby-v#{RUBY_VERSION} #{Mindee::PLATFORM}".freeze
Instance Attribute Summary collapse
- #api_key ⇒ String readonly
- #base_url ⇒ String readonly
- #request_timeout ⇒ Integer readonly
- #user_agent ⇒ String readonly
Instance Method Summary collapse
-
#check_api_key ⇒ Object
Checks API key for a value.
-
#initialize(api_key: nil) ⇒ ApiV2Settings
constructor
A new instance of ApiV2Settings.
Constructor Details
#initialize(api_key: nil) ⇒ ApiV2Settings
Returns a new instance of ApiV2Settings.
37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/mindee/v2/http/api_v2_settings.rb', line 37 def initialize(api_key: nil) @request_timeout = ENV.fetch(MINDEE_V2_REQUEST_TIMEOUT_ENV_NAME, MINDEE_V2_TIMEOUT_DEFAULT).to_i if api_key.nil? && !ENV.fetch(MINDEE_V2_API_KEY_ENV_NAME, MINDEE_V2_API_KEY_DEFAULT).to_s.empty? logger.debug('API key set from environment') end @api_key = if api_key.nil? || api_key.empty? ENV.fetch(MINDEE_V2_API_KEY_ENV_NAME, MINDEE_V2_API_KEY_DEFAULT) else api_key end @base_url = ENV.fetch(MINDEE_V2_BASE_URL_ENV_NAME, MINDEE_V2_BASE_URL_DEFAULT).chomp('/') @user_agent = USER_AGENT end |
Instance Attribute Details
#api_key ⇒ String (readonly)
29 30 31 |
# File 'lib/mindee/v2/http/api_v2_settings.rb', line 29 def api_key @api_key end |
#base_url ⇒ String (readonly)
33 34 35 |
# File 'lib/mindee/v2/http/api_v2_settings.rb', line 33 def base_url @base_url end |
#request_timeout ⇒ Integer (readonly)
31 32 33 |
# File 'lib/mindee/v2/http/api_v2_settings.rb', line 31 def request_timeout @request_timeout end |
#user_agent ⇒ String (readonly)
35 36 37 |
# File 'lib/mindee/v2/http/api_v2_settings.rb', line 35 def user_agent @user_agent end |
Instance Method Details
#check_api_key ⇒ Object
Checks API key for a value.
55 56 57 58 59 60 61 |
# File 'lib/mindee/v2/http/api_v2_settings.rb', line 55 def check_api_key return unless @api_key.nil? || @api_key.to_s.empty? raise Error::MindeeAPIError, "Missing API key. check your Client Configuration.\nYou can set this using the " \ "'#{MINDEE_V2_API_KEY_ENV_NAME}' environment variable." end |