Class: Condition::Storage::Db
- Inherits:
-
Object
- Object
- Condition::Storage::Db
- Defined in:
- lib/condition/storage/db.rb
Instance Method Summary collapse
- #all(param_item) ⇒ Object
- #delete(param_item) ⇒ Object
- #exec_after(param_item) ⇒ Object
-
#initialize(db) ⇒ Db
constructor
A new instance of Db.
- #insert(param_item, default) ⇒ Object
Constructor Details
#initialize(db) ⇒ Db
Returns a new instance of Db.
6 7 8 |
# File 'lib/condition/storage/db.rb', line 6 def initialize(db) @db = db end |
Instance Method Details
#all(param_item) ⇒ Object
10 11 12 |
# File 'lib/condition/storage/db.rb', line 10 def all(param_item) @db["SELECT * FROM #{param_item.name}"].all end |
#delete(param_item) ⇒ Object
14 15 16 |
# File 'lib/condition/storage/db.rb', line 14 def delete(param_item) @db["DELETE FROM #{param_item.name}"].delete end |
#exec_after(param_item) ⇒ Object
42 43 44 45 46 |
# File 'lib/condition/storage/db.rb', line 42 def exec_after(param_item) param_item..each do |key| @db.run key end end |
#insert(param_item, default) ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/condition/storage/db.rb', line 18 def insert(param_item, default) default_item = default.item(param_item.name) if default prms = default_item ? default_item.params.merge(param_item.params) : param_item.params i1 = '' i2 = '' prms.each_pair do |k, v| if i1 != '' i1 = i1 + ', ' i2 = i2 + ', ' end i1 = i1 + k.to_s i2 = i2 + '?' end sql = "INSERT INTO #{param_item.name.to_s} (#{i1}) VALUES (#{i2})" param_item.values.each do |it| prms = default_item ? default_item.value.merge(it) : it ary = [sql] prms.each_pair do |k, v| ary << v end @db.fetch(*ary).insert end end |