Module: ChronoModel

Defined in:
lib/chrono_model.rb,
lib/chrono_model/json.rb,
lib/chrono_model/adapter.rb,
lib/chrono_model/railtie.rb,
lib/chrono_model/version.rb,
lib/chrono_model/time_gate.rb,
lib/chrono_model/utilities.rb,
lib/chrono_model/adapter/ddl.rb,
lib/chrono_model/conversions.rb,
lib/chrono_model/time_machine.rb,
lib/chrono_model/adapter/indexes.rb,
lib/chrono_model/adapter/tsrange.rb,
lib/chrono_model/adapter/upgrade.rb,
lib/chrono_model/patches/relation.rb,
lib/chrono_model/patches/join_node.rb,
lib/chrono_model/patches/preloader.rb,
lib/chrono_model/adapter/migrations.rb,
lib/chrono_model/patches/db_console.rb,
lib/chrono_model/patches/association.rb,
lib/chrono_model/time_machine/timeline.rb,
lib/chrono_model/time_machine/time_query.rb,
lib/chrono_model/patches/as_of_time_holder.rb,
lib/chrono_model/time_machine/history_model.rb,
lib/chrono_model/patches/as_of_time_relation.rb

Defined Under Namespace

Modules: Conversions, Json, Patches, TimeGate, TimeMachine, Utilities Classes: Adapter, Error, Railtie

Constant Summary collapse

VERSION =
"1.1.0"

Class Method Summary collapse

Class Method Details

.history_modelsObject

Returns an Hash keyed by table name of ChronoModels. Computed upon inclusion of the TimeMachine module.



29
30
31
# File 'lib/chrono_model.rb', line 29

def self.history_models
  @_history_models||= {}
end

.upgrade!Object

Performs structure upgrade.



16
17
18
19
20
21
22
23
24
# File 'lib/chrono_model.rb', line 16

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