Class: RailsAsyncMigrations::Migration::Run

Inherits:
Object
  • Object
show all
Defined in:
lib/rails_async_migrations/migration/run.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(direction, version) ⇒ Run

Returns a new instance of Run.



7
8
9
10
11
12
13
14
# File 'lib/rails_async_migrations/migration/run.rb', line 7

def initialize(direction, version)
  @direction = direction
  @version = version
  @migration = migration_from version

  ensure_data_consistency
  require "#{Rails.root}/#{migration.filename}" if defined? Rails
end

Instance Attribute Details

#directionObject (readonly)

Returns the value of attribute direction.



5
6
7
# File 'lib/rails_async_migrations/migration/run.rb', line 5

def direction
  @direction
end

#migrationObject (readonly)

Returns the value of attribute migration.



5
6
7
# File 'lib/rails_async_migrations/migration/run.rb', line 5

def migration
  @migration
end

#versionObject (readonly)

Returns the value of attribute version.



5
6
7
# File 'lib/rails_async_migrations/migration/run.rb', line 5

def version
  @version
end

Instance Method Details

#performObject



16
17
18
19
20
21
22
# File 'lib/rails_async_migrations/migration/run.rb', line 16

def perform
  unlock_migration_methods
  delete_migration_state
  run_migration
  delete_migration_state
  lock_migration_methods
end