module Ccp::Persistent::Loadable

Public Instance Methods

load(file) click to toggle source
# File lib/ccp/persistent/loadable.rb, line 3
def load(file)
  ext = Ccp::Serializers.lookup(Pathname(file).extname.to_s.delete("."))
  kvs = load_kvs_lookup_by_filename(file)
  kvs.new(file.sub(%r{/$},''), ext)
end

Private Instance Methods

load_kvs_lookup_by_filename(file) click to toggle source
# File lib/ccp/persistent/loadable.rb, line 10
def load_kvs_lookup_by_filename(file)
  return Ccp::Persistent::Dir if File.directory?(file.to_s)
  case file.to_s
  when %r{/$}    ; Ccp::Persistent::Dir
  when %r{\.tsv$}; Ccp::Persistent::Tsv
  else           ; Ccp::Persistent::File
  end
end