module Koine::Repository::Repository::IdAwareEntity
Public Instance Methods
create(entity)
click to toggle source
# 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)
click to toggle source
# 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)
click to toggle source
# File lib/koine/repository/repository/id_aware_entity.rb, line 26 def remove(entity) storage.delete_where({ id: entity.id }) end
update(entity)
click to toggle source
# 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