class Simpleadmin::DatabaseConnector

Connector service that handles different databases to provide unified API endpoints

@since 1.0.0

Constants

ADAPTERS_MAPPER

Attributes

database_credentials[R]

Public Class Methods

new(database_credentials:) click to toggle source
# File lib/simpleadmin/database_connector.rb, line 16
def initialize(database_credentials:)
  @database_credentials = database_credentials
end

Public Instance Methods

client() click to toggle source
# File lib/simpleadmin/database_connector.rb, line 20
def client
  adapter.new(database_credentials: database_credentials)
end

Private Instance Methods

adapter() click to toggle source
# File lib/simpleadmin/database_connector.rb, line 28
def adapter
  adapter_class = ADAPTERS_MAPPER[database_credentials[:adapter]]
  raise ArgumentError, 'Invalid adapter name or adapter not exist' if adapter_class.nil?

  adapter_class
end