Module: Snappier::Registry

Defined in:
lib/snappier/registry.rb

Class Method Summary collapse

Class Method Details

.allObject



12
13
14
# File 'lib/snappier/registry.rb', line 12

def self.all
  @for_class_name
end

.for_entity(entity) ⇒ Object



31
32
33
34
35
36
37
# File 'lib/snappier/registry.rb', line 31

def self.for_entity(entity)
  @for_class_name ||= {}
  class_name = @for_class_name[entity.class.name]
  return unless class_name

  class_name.split("::").reduce(Object) { |acc, elem| acc.const_get(elem) }
end

.persistenceObject



20
21
22
# File 'lib/snappier/registry.rb', line 20

def self.persistence
  @persistence || FilePersistence.new
end

.register(map) ⇒ Object



24
25
26
27
28
29
# File 'lib/snappier/registry.rb', line 24

def self.register(map)
  @for_class_name ||= {}
  map.each_key do |key|
    @for_class_name[key] = map[key]
  end
end

.register_persistence(instance) ⇒ Object



16
17
18
# File 'lib/snappier/registry.rb', line 16

def self.register_persistence(instance)
  @persistence = instance
end

.resetObject



7
8
9
10
# File 'lib/snappier/registry.rb', line 7

def self.reset
  @for_class_name = {}
  @persistence = nil
end