Module: Nutella::App::Persist

Defined in:
lib/nutella_lib/app_persist.rb

Overview

Implements basic app-dependent persistence for app-level components

Class Method Summary collapse

Class Method Details

.get_json_collection_store(name) ⇒ JSONFilePersistedCollection

This method returns a JSON-file-backed store (i.e. persistence) for a collection (i.e. an Array)



35
36
37
38
39
# File 'lib/nutella_lib/app_persist.rb', line 35

def self.get_json_collection_store( name )
  file_path = "data/#{name}.json"
  FileUtils.mkdir_p 'data/'
  JSONFilePersistedCollection.new file_path
end

.get_json_object_store(name) ⇒ JSONFilePersistedHash

This method returns a JSON-file-backed store (i.e. persistence) for a single object (i.e. an Hash)



45
46
47
48
49
# File 'lib/nutella_lib/app_persist.rb', line 45

def self.get_json_object_store( name )
  file_path = "data/#{name}.json"
  FileUtils.mkdir_p 'data/'
  JSONFilePersistedHash.new file_path
end

.get_mongo_collection_store(name) ⇒ MongoPersistedCollection

This method returns a MongoDB-backed store (i.e. persistence) for a collection (i.e. an Array)



19
20
21
# File 'lib/nutella_lib/app_persist.rb', line 19

def self.get_mongo_collection_store( name )
  MongoPersistedCollection.new Nutella.mongo_host, Nutella.app_id, name
end

.get_mongo_object_store(name) ⇒ MongoPersistedHash

This method returns a MongoDB-backed store (i.e. persistence) for a single object (i.e. an Hash)



27
28
29
# File 'lib/nutella_lib/app_persist.rb', line 27

def self.get_mongo_object_store( name )
  MongoPersistedHash.new Nutella.mongo_host, Nutella.app_id, 'app_persisted_hashes', name
end