Class: Leonidas::PersistenceLayer::StateLoader

Inherits:
Object
  • Object
show all
Defined in:
lib/leonidas/persistence_layer/state_loader.rb

Instance Method Summary collapse

Constructor Details

#initializeStateLoader

Returns a new instance of StateLoader.



6
7
8
# File 'lib/leonidas/persistence_layer/state_loader.rb', line 6

def initialize
	@builders = [ ]
end

Instance Method Details

#add_builder!(builder) ⇒ Object

Raises:

  • (TypeError)


10
11
12
13
# File 'lib/leonidas/persistence_layer/state_loader.rb', line 10

def add_builder!(builder)
	raise TypeError, "Argument must include Leonidas::PersistenceLayer::StateBuilder" unless builder.class < ::Leonidas::PersistenceLayer::StateBuilder
	@builders << builder
end

#load_state(app) ⇒ Object



15
16
17
# File 'lib/leonidas/persistence_layer/state_loader.rb', line 15

def load_state(app)
	@builders.each {|builder| return builder.build_stable_state app if builder.handles? app}
end