Module: Koine::Repository::Repository::IdAwareEntity
- Defined in:
- lib/koine/repository/repository/id_aware_entity.rb
Instance Method Summary collapse
Instance Method Details
#create(entity) ⇒ Object
13 14 15 16 17 18 |
# File 'lib/koine/repository/repository/id_aware_entity.rb', line 13 def create(entity) values = hydrator.extract(entity) values.delete("id") values.delete(:id) entity.id = storage.insert(values) end |
#find(id) ⇒ Object
5 6 7 8 9 10 11 |
# File 'lib/koine/repository/repository/id_aware_entity.rb', line 5 def find(id) data = storage.find_one_by(id: id) return data unless data entity = new_entity hydrate(data, entity) entity end |
#remove(entity) ⇒ Object
26 27 28 |
# File 'lib/koine/repository/repository/id_aware_entity.rb', line 26 def remove(entity) storage.delete_where({ id: entity.id }) end |
#update(entity) ⇒ Object
20 21 22 23 24 |
# File 'lib/koine/repository/repository/id_aware_entity.rb', line 20 def update(entity) values = hydrator.extract(entity) values.delete(:id) storage.update_where({ id: entity.id }, values) end |