Sha256: a75f8f88cf1c78f868f47a8ca02a5214a7cba6c88c98e9490a84fa0ec049e489

Contents?: true

Size: 697 Bytes

Versions: 3

Compression:

Stored size: 697 Bytes

Contents

require "apartment/adapters/abstract_jdbc_adapter"

module Apartment

  module Tenant
    def self.jdbc_mysql_adapter(config)
      Adapters::JDBCMysqlAdapter.new config
    end
  end

  module Adapters
    class JDBCMysqlAdapter < AbstractJDBCAdapter

      protected

      #   Connect to new database
      #   Abstract adapter will catch generic ActiveRecord error
      #   Catch specific adapter errors here
      #
      #   @param {String} database Database name
      #
      def connect_to_new(database)
        super
      rescue TenantNotFound
        Apartment::Tenant.reset
        raise TenantNotFound, "Cannot find database #{environmentify(database)}"
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
apartment-1.0.2 lib/apartment/adapters/jdbc_mysql_adapter.rb
apartment-1.0.1 lib/apartment/adapters/jdbc_mysql_adapter.rb
apartment-1.0.0 lib/apartment/adapters/jdbc_mysql_adapter.rb