Class: Songbird::MigrationDiscoverer
- Inherits:
-
Object
- Object
- Songbird::MigrationDiscoverer
- Defined in:
- lib/songbird/migration_discoverer.rb
Instance Attribute Summary collapse
-
#migrations_path ⇒ Object
readonly
Get the path to migrations directory.
Instance Method Summary collapse
-
#find_migration_by_version(version) ⇒ Object
Find migration info by version.
-
#initialize(migrations_path = nil) ⇒ MigrationDiscoverer
constructor
A new instance of MigrationDiscoverer.
-
#load_all_migrations ⇒ Object
Get all available migrations.
-
#load_migration_class(version) ⇒ Object
Load a specific migration class by version.
-
#migrations_exist? ⇒ Boolean
Check if migrations directory exists.
Constructor Details
#initialize(migrations_path = nil) ⇒ MigrationDiscoverer
Returns a new instance of MigrationDiscoverer.
9 10 11 |
# File 'lib/songbird/migration_discoverer.rb', line 9 def initialize(migrations_path = nil) @migrations_path = migrations_path || default_migrations_path end |
Instance Attribute Details
#migrations_path ⇒ Object (readonly)
Get the path to migrations directory
41 42 43 |
# File 'lib/songbird/migration_discoverer.rb', line 41 def migrations_path @migrations_path end |
Instance Method Details
#find_migration_by_version(version) ⇒ Object
Find migration info by version
31 32 33 |
# File 'lib/songbird/migration_discoverer.rb', line 31 def find_migration_by_version(version) find_migration_by_version_private(version) end |
#load_all_migrations ⇒ Object
Get all available migrations
14 15 16 |
# File 'lib/songbird/migration_discoverer.rb', line 14 def load_all_migrations load_migration_files end |
#load_migration_class(version) ⇒ Object
Load a specific migration class by version
19 20 21 22 23 24 25 26 27 28 |
# File 'lib/songbird/migration_discoverer.rb', line 19 def load_migration_class(version) migration_info = find_migration_by_version_private(version) return nil unless migration_info # Load the migration file load migration_info[:filepath] # Get the migration class migration_info[:class_name].constantize end |
#migrations_exist? ⇒ Boolean
Check if migrations directory exists
36 37 38 |
# File 'lib/songbird/migration_discoverer.rb', line 36 def migrations_exist? Dir.exist?(@migrations_path) end |