lib/cassandra_object/migrations.rb in gotime-cassandra_object-0.8.3 vs lib/cassandra_object/migrations.rb in gotime-cassandra_object-0.8.4
- old
+ new
@@ -1,24 +1,16 @@
module CassandraObject
module Migrations
extend ActiveSupport::Concern
+ extend ActiveSupport::Autoload
+
included do
class_inheritable_array :migrations
class_inheritable_accessor :current_schema_version
self.current_schema_version = 0
end
-
- class Migration
- attr_reader :version
- def initialize(version, block)
- @version = version
- @block = block
- end
-
- def run(attrs)
- @block.call(attrs)
- end
- end
+
+ autoload :Migration
class MigrationNotFoundError < StandardError
def initialize(record_version, migrations)
super("Cannot migrate a record from #{record_version.inspect}. Migrations exist for #{migrations.map(&:version)}")
end