Class: StrixRuby::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/strix_ruby/configuration.rb

Overview

Configuration class for storing API credentials and settings

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



8
9
10
11
12
13
# File 'lib/strix_ruby/configuration.rb', line 8

def initialize
  @base_url = nil
  @username = nil
  @password = nil
  @account_id = nil
end

Instance Attribute Details

#account_idObject

Returns the value of attribute account_id.



6
7
8
# File 'lib/strix_ruby/configuration.rb', line 6

def 
  @account_id
end

#base_urlObject

Returns the value of attribute base_url.



6
7
8
# File 'lib/strix_ruby/configuration.rb', line 6

def base_url
  @base_url
end

#passwordObject

Returns the value of attribute password.



6
7
8
# File 'lib/strix_ruby/configuration.rb', line 6

def password
  @password
end

#usernameObject

Returns the value of attribute username.



6
7
8
# File 'lib/strix_ruby/configuration.rb', line 6

def username
  @username
end

Instance Method Details

#valid?Boolean

Check if configuration is valid without raising

Returns:

  • (Boolean)

    true if configuration is valid



31
32
33
34
35
36
# File 'lib/strix_ruby/configuration.rb', line 31

def valid?
  validate!
  true
rescue ConfigurationError
  false
end

#validate!Boolean

Validates that all required configuration is present

Returns:

  • (Boolean)

    true if configuration is valid

Raises:



18
19
20
21
22
23
24
25
26
27
# File 'lib/strix_ruby/configuration.rb', line 18

def validate!
  missing = []
  missing << "base_url" if base_url.nil? || base_url.empty?
  missing << "username" if username.nil? || username.empty?
  missing << "password" if password.nil? || password.empty?

  raise ConfigurationError, "Missing configuration: #{missing.join(", ")}" unless missing.empty?

  true
end