Class: AfterMigrate::Stores::Memory

Inherits:
Object
  • Object
show all
Defined in:
lib/after_migrate/store.rb

Direct Known Subclasses

FileStore

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeMemory

Returns a new instance of Memory.



11
12
13
# File 'lib/after_migrate/store.rb', line 11

def initialize
  @affected_tables = Concurrent::Map.new
end

Instance Attribute Details

#affected_tablesObject (readonly)

Returns the value of attribute affected_tables.



9
10
11
# File 'lib/after_migrate/store.rb', line 9

def affected_tables
  @affected_tables
end

Instance Method Details

#merge_tables(schema, table_names) ⇒ Object



15
16
17
18
19
20
# File 'lib/after_migrate/store.rb', line 15

def merge_tables(schema, table_names)
  return if table_names.blank?

  set = affected_tables.compute_if_absent(schema) { Concurrent::Set.new }
  set.merge(table_names)
end

#reset!Object



22
23
24
# File 'lib/after_migrate/store.rb', line 22

def reset!
  @affected_tables = Concurrent::Map.new
end