Class: Departure::RailsAdapter::BaseAdapter
- Inherits:
-
Object
- Object
- Departure::RailsAdapter::BaseAdapter
- Defined in:
- lib/departure/rails_adapter.rb
Direct Known Subclasses
Class Method Summary collapse
-
.create_connection_adapter(**config) ⇒ Object
ActiveRecord::ConnectionAdapters::Mysql2Adapter.
- .register_integrations ⇒ Object
- .sql_column ⇒ Object
Class Method Details
.create_connection_adapter(**config) ⇒ Object
ActiveRecord::ConnectionAdapters::Mysql2Adapter
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
# File 'lib/departure/rails_adapter.rb', line 55 def create_connection_adapter(**config) mysql2_adapter = ActiveRecord::Base.mysql2_connection(config) connection_details = Departure::ConnectionDetails.new(config) verbose = ActiveRecord::Migration.verbose sanitizers = [ Departure::LogSanitizers::PasswordSanitizer.new(connection_details) ] percona_logger = Departure::LoggerFactory.build(sanitizers: sanitizers, verbose: verbose) cli_generator = Departure::CliGenerator.new(connection_details) runner = Departure::Runner.new( percona_logger, cli_generator, mysql2_adapter ) = { mysql_adapter: mysql2_adapter } ActiveRecord::ConnectionAdapters::DepartureAdapter.new( runner, percona_logger, , config ) end |
.register_integrations ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/departure/rails_adapter.rb', line 38 def register_integrations require 'active_record/connection_adapters/percona_adapter' ActiveSupport.on_load(:active_record) do ActiveRecord::Migration.class_eval do include Departure::Migration end if ActiveRecord::VERSION::MAJOR == 7 && ActiveRecord::VERSION::MINOR == 1 require 'departure/rails_patches/active_record_migrator_with_advisory_lock_patch' ActiveRecord::Migrator.prepend Departure::RailsPatches::ActiveRecordMigratorWithAdvisoryLockPatch end end end |
.sql_column ⇒ Object
82 83 84 |
# File 'lib/departure/rails_adapter.rb', line 82 def sql_column ::ActiveRecord::ConnectionAdapters::DepartureAdapter::Column end |