class Attio::Util::Configuration

def validate!

def validate!
  REQUIRED_SETTINGS.each do |setting|
    value = instance_variable_get("@#{setting}")
    if value.nil? || (value.respond_to?(:empty?) && value.empty?)
      raise ConfigurationError, "#{setting} must be configured"
    end
  end
  raise ConfigurationError, "timeout must be positive" if @timeout && @timeout <= 0
  raise ConfigurationError, "open_timeout must be positive" if @open_timeout && @open_timeout <= 0
  raise ConfigurationError, "max_retries must be non-negative" if @max_retries&.negative?
  true
end