module ZuoraConnect

def self.configuration

def self.configuration
  @configuration ||= Configuration.new
end

def self.configure

def self.configure
  yield(configuration)
  ::Apartment.excluded_models << "Delayed::Job" if configuration.delayed_job
  return configuration
end

def self.reset

def self.reset
  @configuration = Configuration.new
end

def private_key

def private_key
  if ENV["CONNECT_KEY"].blank?
    @private_key.include?("BEGIN") ? @private_key : Base64.urlsafe_decode64(@private_key)
  else
    Base64.urlsafe_decode64(ENV["CONNECT_KEY"])
  end
end