Sha256: bf66ba7f369f49183b214ca161a7981076d672dc8b86a0269a6fabcca3b7063c
Contents?: true
Size: 709 Bytes
Versions: 2
Compression:
Stored size: 709 Bytes
Contents
# frozen_string_literal: true module SQLRunner UnsupportedDatabase = Class.new(StandardError) MissingDependency = Class.new(StandardError) def self.adapter_registry @adapter_registry ||= {} end module Adapters require "sql_runner/adapters/postgresql" require "sql_runner/adapters/mysql" require "sql_runner/adapters/sqlite" require "sql_runner/adapters/active_record" def self.register(name, adapter) SQLRunner.adapter_registry[name] = adapter end def self.find(name) adapter = SQLRunner.adapter_registry.fetch(name) do raise UnsupportedDatabase, "#{name} is not supported by SQLRunner" end adapter.tap(&:load) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
sql_runner-0.4.1 | lib/sql_runner/adapters.rb |
sql_runner-0.4.0 | lib/sql_runner/adapters.rb |