Class: Leonidas::PersistenceLayer::Persister
- Inherits:
-
Object
- Object
- Leonidas::PersistenceLayer::Persister
- Defined in:
- lib/leonidas/persistence_layer/persister.rb
Constant Summary collapse
- @@persister =
nil- @@state_loader =
::Leonidas::PersistenceLayer::StateLoader.new
Class Method Summary collapse
- .add_state_builder!(builder) ⇒ Object
- .delete(app) ⇒ Object
- .load(app_name) ⇒ Object
- .persist(app) ⇒ Object
- .set_app_persister!(persister) ⇒ Object
Class Method Details
.add_state_builder!(builder) ⇒ Object
30 31 32 |
# File 'lib/leonidas/persistence_layer/persister.rb', line 30 def self.add_state_builder!(builder) @@state_loader.add_builder! builder end |
.delete(app) ⇒ Object
47 48 49 |
# File 'lib/leonidas/persistence_layer/persister.rb', line 47 def self.delete(app) @@persister.delete app unless @@persister.nil? end |
.load(app_name) ⇒ Object
34 35 36 37 38 39 40 41 |
# File 'lib/leonidas/persistence_layer/persister.rb', line 34 def self.load(app_name) app = @@persister.load app_name unless @@persister.nil? unless app.nil? @@state_loader.load_state app app.process_commands! end app end |
.persist(app) ⇒ Object
43 44 45 |
# File 'lib/leonidas/persistence_layer/persister.rb', line 43 def self.persist(app) @@persister.persist app unless @@persister.nil? end |
.set_app_persister!(persister) ⇒ Object
23 24 25 26 |
# File 'lib/leonidas/persistence_layer/persister.rb', line 23 def self.set_app_persister!(persister) raise TypeError, "Argument must include Leonidas::PersistenceLayer::AppPersister" unless persister.class < ::Leonidas::PersistenceLayer::AppPersister @@persister = persister end |