Class: Ccp::Persistent::Versioned::Storage
- Inherits:
-
Struct
- Object
- Struct
- Ccp::Persistent::Versioned::Storage
- Defined in:
- lib/ccp/persistent/versioned.rb,
lib/ccp/persistent/versioned.rb
Instance Attribute Summary collapse
-
#dir ⇒ Object
Returns the value of attribute dir.
-
#ext ⇒ Object
Returns the value of attribute ext.
-
#kvs ⇒ Object
Returns the value of attribute kvs.
-
#name ⇒ Object
Returns the value of attribute name.
Class Method Summary collapse
Instance Method Summary collapse
Instance Attribute Details
#dir ⇒ Object
Returns the value of attribute dir
6 7 8 |
# File 'lib/ccp/persistent/versioned.rb', line 6 def dir @dir end |
#ext ⇒ Object
Returns the value of attribute ext
6 7 8 |
# File 'lib/ccp/persistent/versioned.rb', line 6 def ext @ext end |
#kvs ⇒ Object
Returns the value of attribute kvs
6 7 8 |
# File 'lib/ccp/persistent/versioned.rb', line 6 def kvs @kvs end |
#name ⇒ Object
Returns the value of attribute name
6 7 8 |
# File 'lib/ccp/persistent/versioned.rb', line 6 def name @name end |
Class Method Details
.complete(file, default_dir, default_kvs, default_ext) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/ccp/persistent/versioned.rb', line 8 def self.complete(file, default_dir, default_kvs, default_ext) s = file.must(Storage) { path, ext, kvs = file.to_s.split(".", 3) new(default_dir, path, ext, kvs) } s.name = Pathname(s.name).basename(".*").to_s s.dir = default_dir if s.dir.blank? s.ext = default_ext if s.ext.blank? s.kvs = default_kvs if s.kvs.blank? s.ext.must.not.blank s.kvs.must.not.blank return s end |
Instance Method Details
#create ⇒ Object
32 33 34 35 36 |
# File 'lib/ccp/persistent/versioned.rb', line 32 def create kvs = Ccp::Persistent.lookup(self.kvs) ext = Ccp::Serializers.lookup(self.ext) kvs.new(path, ext) end |
#path ⇒ Object
25 26 27 28 29 30 |
# File 'lib/ccp/persistent/versioned.rb', line 25 def path kvs = Ccp::Persistent.lookup(self.kvs) ext = Ccp::Serializers.lookup(self.ext) base = [name.to_s, ext.ext, kvs.ext].join(".").sub(/\.$/,'') return Pathname(dir) + base end |