Class: Cassie::Schema::CassandraMigrations::MigrationFile
- Defined in:
- lib/cassie/schema/cassandra_migrations/migration_file.rb
Instance Attribute Summary collapse
-
#description ⇒ Object
readonly
Returns the value of attribute description.
-
#filename ⇒ Object
readonly
Returns the value of attribute filename.
-
#source ⇒ Object
readonly
Returns the value of attribute source.
Instance Method Summary collapse
-
#build_migration_class(version) ⇒ String
Builds a Cassie::Schema::Migration from the CassandraMigrations migration file.
-
#initialize(filename) ⇒ MigrationFile
constructor
A new instance of MigrationFile.
Constructor Details
#initialize(filename) ⇒ MigrationFile
Returns a new instance of MigrationFile.
7 8 9 10 |
# File 'lib/cassie/schema/cassandra_migrations/migration_file.rb', line 7 def initialize(filename) @filename = filename @description = parse_description end |
Instance Attribute Details
#description ⇒ Object (readonly)
Returns the value of attribute description.
5 6 7 |
# File 'lib/cassie/schema/cassandra_migrations/migration_file.rb', line 5 def description @description end |
#filename ⇒ Object (readonly)
Returns the value of attribute filename.
5 6 7 |
# File 'lib/cassie/schema/cassandra_migrations/migration_file.rb', line 5 def filename @filename end |
#source ⇒ Object (readonly)
Returns the value of attribute source.
5 6 7 |
# File 'lib/cassie/schema/cassandra_migrations/migration_file.rb', line 5 def source @source end |
Instance Method Details
#build_migration_class(version) ⇒ String
Builds a Cassie::Schema::Migration from the CassandraMigrations migration file
16 17 18 19 20 21 22 23 24 |
# File 'lib/cassie/schema/cassandra_migrations/migration_file.rb', line 16 def build_migration_class(version) @source = load_source redefine_class(version.migration_class_name) define_new_migration_class version.migration_class_name.constantize @source ensure @source = nil #free for GC end |