Module: Ccp::Persistent

Extended by:
Loadable
Defined in:
lib/ccp/persistent.rb

Defined Under Namespace

Modules: Loadable Classes: Base, Dir, File, Tsv, Versioned

Constant Summary collapse

NotFound =
Class.new(RuntimeError)

Class Method Summary collapse

Methods included from Loadable

load

Class Method Details

.lookup(name) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/ccp/persistent.rb', line 14

def self.lookup(name)
  case name.to_s
  when "dir"   ; Ccp::Persistent::Dir
  when "tsv"   ; Ccp::Persistent::Tsv
  when "file"  ; Ccp::Persistent::File
  when "json"  ; Ccp::Persistent::Json
  else
    name.must(Ccp::Persistent::Base) {
      raise NotFound, "%s: %s" % [name.class, name]
    }
  end
end