Class: TrustyCms::ExtensionMigrator

Inherits:
ActiveRecord::Migrator
  • Object
show all
Defined in:
lib/trusty_cms/extension_migrator.rb

Class Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(direction, migrations_path, target_version = nil) ⇒ ExtensionMigrator

Returns a new instance of ExtensionMigrator.



21
22
23
24
25
# File 'lib/trusty_cms/extension_migrator.rb', line 21

def initialize(direction, migrations_path, target_version = nil)
  super
  initialize_extension_schema_migrations
  initialize_received_migrations
end

Class Attribute Details

.extensionObject

Returns the value of attribute extension.



4
5
6
# File 'lib/trusty_cms/extension_migrator.rb', line 4

def extension
  @extension
end

Class Method Details

.get_all_versionsObject



14
15
16
17
18
# File 'lib/trusty_cms/extension_migrator.rb', line 14

def get_all_versions
  ActiveRecord::Base.connection.select_values("SELECT version FROM #{sanitize(schema_migrations_table_name)}").
    select { |version| version.starts_with?("#{@extension.extension_name}-") }.
    map { |version| version.sub("#{@extension.extension_name}-", '').to_i }.sort
end

.migrate(target_version = nil) ⇒ Object



6
7
8
# File 'lib/trusty_cms/extension_migrator.rb', line 6

def migrate(target_version = nil)
  super extension.migrations_path, target_version
end

.migrate_extensionsObject



10
11
12
# File 'lib/trusty_cms/extension_migrator.rb', line 10

def migrate_extensions
  []
end