Class: ActiveRecord::Temporal::SystemVersioning::VersioningHookDefinition

Inherits:
Object
  • Object
show all
Defined in:
lib/activerecord/temporal/system_versioning/schema_definitions.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(source_table, history_table, columns:, primary_key:, gem_version:) ⇒ VersioningHookDefinition

Returns a new instance of VersioningHookDefinition.



6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/activerecord/temporal/system_versioning/schema_definitions.rb', line 6

def initialize(
  source_table,
  history_table,
  columns:,
  primary_key:,
  gem_version:
)
  @source_table = source_table
  @history_table = history_table
  @columns = columns
  @primary_key = primary_key
  @gem_version = gem_version
end

Instance Attribute Details

#columnsObject

Returns the value of attribute columns.



4
5
6
# File 'lib/activerecord/temporal/system_versioning/schema_definitions.rb', line 4

def columns
  @columns
end

#gem_versionObject

Returns the value of attribute gem_version.



4
5
6
# File 'lib/activerecord/temporal/system_versioning/schema_definitions.rb', line 4

def gem_version
  @gem_version
end

#history_tableObject

Returns the value of attribute history_table.



4
5
6
# File 'lib/activerecord/temporal/system_versioning/schema_definitions.rb', line 4

def history_table
  @history_table
end

#primary_keyObject

Returns the value of attribute primary_key.



4
5
6
# File 'lib/activerecord/temporal/system_versioning/schema_definitions.rb', line 4

def primary_key
  @primary_key
end

#source_tableObject

Returns the value of attribute source_table.



4
5
6
# File 'lib/activerecord/temporal/system_versioning/schema_definitions.rb', line 4

def source_table
  @source_table
end

Instance Method Details

#delete_hookObject



28
29
30
# File 'lib/activerecord/temporal/system_versioning/schema_definitions.rb', line 28

def delete_hook
  DeleteHookDefinition.new(@source_table, @history_table, @primary_key, @gem_version)
end

#insert_hookObject



20
21
22
# File 'lib/activerecord/temporal/system_versioning/schema_definitions.rb', line 20

def insert_hook
  InsertHookDefinition.new(@source_table, @history_table, @columns, @gem_version)
end

#update_hookObject



24
25
26
# File 'lib/activerecord/temporal/system_versioning/schema_definitions.rb', line 24

def update_hook
  UpdateHookDefinition.new(@source_table, @history_table, @columns, @primary_key, @gem_version)
end