Class: Mingle::KeyvalueStore::DynamodbBased
- Inherits:
-
Object
- Object
- Mingle::KeyvalueStore::DynamodbBased
- Defined in:
- lib/mingle_keyvalue_store.rb
Instance Method Summary collapse
- #[](store_key) ⇒ Object
- #[]=(store_key, value) ⇒ Object
- #all_items ⇒ Object
- #clear ⇒ Object
- #delete(key) ⇒ Object
-
#initialize(table_name, key_column, value_column) ⇒ DynamodbBased
constructor
A new instance of DynamodbBased.
- #names ⇒ Object
Constructor Details
#initialize(table_name, key_column, value_column) ⇒ DynamodbBased
Returns a new instance of DynamodbBased.
70 71 72 73 74 |
# File 'lib/mingle_keyvalue_store.rb', line 70 def initialize(table_name, key_column, value_column) @key_column = key_column @value_column = value_column.to_s @table_name = table_name end |
Instance Method Details
#[](store_key) ⇒ Object
76 77 78 79 80 |
# File 'lib/mingle_keyvalue_store.rb', line 76 def [](store_key) if attribute = attributes(table_items[store_key])[@value_column] attribute end end |
#[]=(store_key, value) ⇒ Object
82 83 84 |
# File 'lib/mingle_keyvalue_store.rb', line 82 def []=(store_key, value) table_items.create(@key_column => store_key, @value_column => value) end |
#all_items ⇒ Object
94 95 96 |
# File 'lib/mingle_keyvalue_store.rb', line 94 def all_items table_items.map { |item| attributes(item) } end |
#clear ⇒ Object
86 87 88 |
# File 'lib/mingle_keyvalue_store.rb', line 86 def clear table_items.each(&:delete) end |
#delete(key) ⇒ Object
98 99 100 |
# File 'lib/mingle_keyvalue_store.rb', line 98 def delete(key) table_items.where(@key_column => key).first.delete end |
#names ⇒ Object
90 91 92 |
# File 'lib/mingle_keyvalue_store.rb', line 90 def names table_items.map(&:hash_value) end |