Module: MinceDataModel::ClassMethods
- Defined in:
- lib/mince_data_model.rb
Instance Method Summary collapse
- #all ⇒ Object
- #all_by_field(field, value) ⇒ Object
- #all_by_fields(hash) ⇒ Object
- #array_contains(field, value) ⇒ Object
- #containing_any(field, values) ⇒ Object
- #data_collection(collection_name = nil) ⇒ Object
- #data_fields(*fields) ⇒ Object
- #data_store ⇒ Object
- #delete_by_params(params) ⇒ Object
- #delete_collection ⇒ Object
- #delete_field(field) ⇒ Object
- #find(id) ⇒ Object
- #find_by_field(field, value) ⇒ Object
- #find_by_fields(hash) ⇒ Object
- #increment_field_by_amount(id, field, amount) ⇒ Object
- #push_to_array(id, field, value) ⇒ Object
- #remove_from_array(id, field, value) ⇒ Object
- #store(model) ⇒ Object
- #translate_each_from_data_store(data) ⇒ Object
- #translate_from_data_store(hash) ⇒ Object
- #update(model) ⇒ Object
- #update_field_with_value(id, field, value) ⇒ Object
Instance Method Details
#all ⇒ Object
72 73 74 |
# File 'lib/mince_data_model.rb', line 72 def all translate_each_from_data_store data_store.instance.find_all(data_collection) end |
#all_by_field(field, value) ⇒ Object
76 77 78 |
# File 'lib/mince_data_model.rb', line 76 def all_by_field(field, value) translate_each_from_data_store data_store.instance.get_all_for_key_with_value(data_collection, field, value) end |
#all_by_fields(hash) ⇒ Object
80 81 82 |
# File 'lib/mince_data_model.rb', line 80 def all_by_fields(hash) translate_each_from_data_store data_store.instance.get_by_params(data_collection, hash) end |
#array_contains(field, value) ⇒ Object
96 97 98 |
# File 'lib/mince_data_model.rb', line 96 def array_contains(field, value) translate_each_from_data_store data_store.instance.array_contains(data_collection, field, value) end |
#containing_any(field, values) ⇒ Object
92 93 94 |
# File 'lib/mince_data_model.rb', line 92 def containing_any(field, values) translate_each_from_data_store data_store.instance.containing_any(data_collection, field, values) end |
#data_collection(collection_name = nil) ⇒ Object
27 28 29 30 |
# File 'lib/mince_data_model.rb', line 27 def data_collection(collection_name = nil) set_data_collection(collection_name) if collection_name @data_collection end |
#data_fields(*fields) ⇒ Object
22 23 24 25 |
# File 'lib/mince_data_model.rb', line 22 def data_fields(*fields) create_data_fields(*fields) if fields.any? @data_fields end |
#data_store ⇒ Object
18 19 20 |
# File 'lib/mince_data_model.rb', line 18 def data_store DataStoreConfig.data_store end |
#delete_by_params(params) ⇒ Object
68 69 70 |
# File 'lib/mince_data_model.rb', line 68 def delete_by_params(params) data_store.instance.delete_by_params(data_collection, params) end |
#delete_collection ⇒ Object
100 101 102 |
# File 'lib/mince_data_model.rb', line 100 def delete_collection data_store.instance.delete_collection(data_collection) end |
#delete_field(field) ⇒ Object
64 65 66 |
# File 'lib/mince_data_model.rb', line 64 def delete_field(field) data_store.instance.delete_field(data_collection, field) end |
#find(id) ⇒ Object
60 61 62 |
# File 'lib/mince_data_model.rb', line 60 def find(id) translate_from_data_store data_store.instance.find(data_collection, data_store.primary_key_identifier, id) end |
#find_by_field(field, value) ⇒ Object
88 89 90 |
# File 'lib/mince_data_model.rb', line 88 def find_by_field(field, value) translate_from_data_store data_store.instance.get_for_key_with_value(data_collection, field, value) end |
#find_by_fields(hash) ⇒ Object
84 85 86 |
# File 'lib/mince_data_model.rb', line 84 def find_by_fields(hash) translate_from_data_store all_by_fields(hash).first end |
#increment_field_by_amount(id, field, amount) ⇒ Object
48 49 50 |
# File 'lib/mince_data_model.rb', line 48 def increment_field_by_amount(id, field, amount) data_store.instance.increment_field_by_amount(data_collection, id, field, amount) end |
#push_to_array(id, field, value) ⇒ Object
56 57 58 |
# File 'lib/mince_data_model.rb', line 56 def push_to_array(id, field, value) data_store.instance.push_to_array(data_collection, data_store.primary_key_identifier, id, field, value) end |
#remove_from_array(id, field, value) ⇒ Object
52 53 54 |
# File 'lib/mince_data_model.rb', line 52 def remove_from_array(id, field, value) data_store.instance.remove_from_array(data_collection, data_store.primary_key_identifier, id, field, value) end |
#store(model) ⇒ Object
32 33 34 35 36 |
# File 'lib/mince_data_model.rb', line 32 def store(model) new(model).tap do |p| p.add_to_data_store end.id end |
#translate_each_from_data_store(data) ⇒ Object
111 112 113 |
# File 'lib/mince_data_model.rb', line 111 def translate_each_from_data_store(data) data.collect {|d| translate_from_data_store(d) } end |
#translate_from_data_store(hash) ⇒ Object
104 105 106 107 108 109 |
# File 'lib/mince_data_model.rb', line 104 def translate_from_data_store(hash) if hash hash["id"] = hash[primary_key_identifier] if hash[primary_key_identifier] HashWithIndifferentAccess.new hash end end |
#update(model) ⇒ Object
38 39 40 41 42 |
# File 'lib/mince_data_model.rb', line 38 def update(model) new(model).tap do |p| p.replace_in_data_store end end |
#update_field_with_value(id, field, value) ⇒ Object
44 45 46 |
# File 'lib/mince_data_model.rb', line 44 def update_field_with_value(id, field, value) data_store.instance.update_field_with_value(data_collection, id, field, value) end |