Class: Docket::Storage::Daybreak
- Defined in:
- lib/docket/storage/daybreak.rb
Instance Attribute Summary
Attributes inherited from Base
Instance Method Summary collapse
- #append(key, value) ⇒ Object
- #close ⇒ Object
- #closed? ⇒ Boolean
-
#initialize(filename) ⇒ Daybreak
constructor
A new instance of Daybreak.
- #load ⇒ Object
- #read(key) ⇒ Object
- #remove(key) ⇒ Object
- #save(key, value, options = {}) ⇒ Object
Constructor Details
#initialize(filename) ⇒ Daybreak
Returns a new instance of Daybreak.
7 8 9 |
# File 'lib/docket/storage/daybreak.rb', line 7 def initialize filename self.db = ::Daybreak::DB.new filename end |
Instance Method Details
#append(key, value) ⇒ Object
19 20 21 22 23 24 |
# File 'lib/docket/storage/daybreak.rb', line 19 def append key, value touch do new_value = Array(read(key)) << value save(key, new_value.uniq) end end |
#close ⇒ Object
38 39 40 |
# File 'lib/docket/storage/daybreak.rb', line 38 def close db.close end |
#closed? ⇒ Boolean
42 43 44 |
# File 'lib/docket/storage/daybreak.rb', line 42 def closed? db.closed? end |
#load ⇒ Object
34 35 36 |
# File 'lib/docket/storage/daybreak.rb', line 34 def load db.load end |
#read(key) ⇒ Object
30 31 32 |
# File 'lib/docket/storage/daybreak.rb', line 30 def read key touch { db.get key } end |
#remove(key) ⇒ Object
26 27 28 |
# File 'lib/docket/storage/daybreak.rb', line 26 def remove key touch { db.delete! key } end |
#save(key, value, options = {}) ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/docket/storage/daybreak.rb', line 11 def save key, value, ={} touch do db.set! key, value db.compact db.flush end end |