Sha256: 92ec3641d29b8fb0bb706d8c44b996b656b4ec8a75367f54450ef76af8e8d31c

Contents?: true

Size: 1011 Bytes

Versions: 4

Compression:

Stored size: 1011 Bytes

Contents

require 'chrono_model/version'
require 'chrono_model/adapter'
require 'chrono_model/patches'
require 'chrono_model/time_machine'
require 'chrono_model/time_gate'
require 'chrono_model/utils'

module ChronoModel
  class Error < ActiveRecord::ActiveRecordError #:nodoc:
  end

  def self.upgrade!
    connection = ActiveRecord::Base.connection

    unless connection.is_a?(ChronoModel::Adapter)
      raise ChronoModel::Error, "This database connection is not a ChronoModel::Adapter"
    end

    connection.chrono_upgrade!
  end
end

if defined?(Rails)
  require 'chrono_model/railtie'
end

ActiveRecord::Associations::Association.instance_eval do
  prepend ChronoModel::Patches::Association
end

ActiveRecord::Relation.instance_eval do
  prepend ChronoModel::Patches::Relation
end

ActiveRecord::Associations::Preloader.instance_eval do
  prepend ChronoModel::Patches::Preloader
end

ActiveRecord::Associations::Preloader::Association.instance_eval do
  prepend ChronoModel::Patches::Preloader::Association
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
chrono_model-1.0.1 lib/chrono_model.rb
chrono_model-0.13.2 lib/chrono_model.rb
chrono_model-1.0.0 lib/chrono_model.rb
chrono_model-0.13.1 lib/chrono_model.rb