Class: Watobo::DataStore
- Inherits:
-
Object
- Object
- Watobo::DataStore
- Defined in:
- lib/watobo/adapters/data_store.rb
Overview
:nodoc: all
Class Method Summary collapse
- .connect(project_name, session_name) ⇒ Object
- .engine ⇒ Object
- .method_missing(name, *args, &block) ⇒ Object
- .projects(&block) ⇒ Object
- .sessions(project_name, &block) ⇒ Object
Class Method Details
.connect(project_name, session_name) ⇒ Object
33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/watobo/adapters/data_store.rb', line 33 def self.connect(project_name, session_name) a = Watobo::Conf::Datastore.adapter store = case when 'file' FileSessionStore.new(project_name, session_name) else nil end @engine = store store end |
.engine ⇒ Object
7 8 9 |
# File 'lib/watobo/adapters/data_store.rb', line 7 def self.engine @engine end |
.method_missing(name, *args, &block) ⇒ Object
45 46 47 48 |
# File 'lib/watobo/adapters/data_store.rb', line 45 def self.method_missing(name, *args, &block) super unless @engine.respond_to? name @engine.send name, *args, &block end |
.projects(&block) ⇒ Object
11 12 13 14 15 16 17 18 19 |
# File 'lib/watobo/adapters/data_store.rb', line 11 def self.projects(&block) ps = [] Dir.glob("#{Watobo.workspace_path}/*").each do |p| pname = File.basename(p) yield pname if block_given? ps << pname end ps end |
.sessions(project_name, &block) ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/watobo/adapters/data_store.rb', line 21 def self.sessions(project_name, &block) ss = [] project_name = project_name.to_s if project_name.is_a? Symbol return ps unless File.exist? "#{Watobo.workspace_path}/#{project_name}" Dir.glob("#{Watobo.workspace_path}/#{project_name}/*").each do |s| sname = File.basename(s) yield sname if block_given? ss << sname end ss end |