Class: Helm::Persister
- Inherits:
-
Object
- Object
- Helm::Persister
- Defined in:
- lib/helm/persister.rb
Direct Known Subclasses
Instance Attribute Summary collapse
-
#db ⇒ Object
Returns the value of attribute db.
Instance Method Summary collapse
- #dataset ⇒ Object
-
#initialize(db_string) ⇒ Persister
constructor
A new instance of Persister.
- #insert_or_update(row) ⇒ Object
- #slice(hash) ⇒ Object
Constructor Details
Instance Attribute Details
#db ⇒ Object
Returns the value of attribute db.
8 9 10 |
# File 'lib/helm/persister.rb', line 8 def db @db end |
Instance Method Details
#dataset ⇒ Object
19 20 21 |
# File 'lib/helm/persister.rb', line 19 def dataset @db[table_name] end |
#insert_or_update(row) ⇒ Object
23 24 25 |
# File 'lib/helm/persister.rb', line 23 def insert_or_update(row) dataset.replace(slice(row)) end |
#slice(hash) ⇒ Object
10 11 12 13 14 15 16 17 |
# File 'lib/helm/persister.rb', line 10 def slice(hash) Hash[ columns.zip( hash.values_at(*columns).zip( hash.values_at(*(columns.map(&:to_s))) ).map{|sym_val, str_val| sym_val || str_val }) ] end |