Sha256: 626e51b53041abee83b1d2eb9bb974dc352266fb957b0b9913a4de1ac9bf723e
Contents?: true
Size: 1.23 KB
Versions: 1
Compression:
Stored size: 1.23 KB
Contents
# frozen_string_literal: true module ActiveRecordMysqlXverify module Verifier def active? if (@raw_connection || @connection) && _extend_verify? is_active = begin verifier = ActiveRecordMysqlXverify.verify verifier.call(@raw_connection || @connection) rescue StandardError => e ActiveRecordMysqlXverify.logger.warn("Connection verification failed: #{_build_verify_error_message(e)}") false ensure Thread.current[ActiveRecordMysqlXverify::EXTEND_VERIFY_FLAG] = false end unless is_active ActiveRecordMysqlXverify.logger.info( "Invalid connection: #{ActiveRecordMysqlXverify::Utils.mysql2_connection_info(@raw_connection || @connection)}" ) end is_active else super end end def _build_verify_error_message(e) "cause: #{e.message} [#{e.class}, " + ActiveRecordMysqlXverify::Utils.mysql2_connection_info(@raw_connection || @connection) end def _extend_verify? handle_if = ActiveRecordMysqlXverify.handle_if (!ActiveRecordMysqlXverify.only_on_error || Thread.current[ActiveRecordMysqlXverify::EXTEND_VERIFY_FLAG]) && handle_if.call(@config) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
active_record_mysql_xverify-0.4.0 | lib/active_record_mysql_xverify/verifier.rb |