From 16eea49277e736c53078ec1e7b5005ac7a26a112 Mon Sep 17 00:00:00 2001 From: Jeroen van Baarsen Date: Wed, 16 Jul 2014 20:44:24 +0200 Subject: [PATCH] Moved some behaviour to one place Signed-off-by: Jeroen van Baarsen --- app/models/event.rb | 6 ++++++ app/models/issue.rb | 4 +--- app/models/merge_request.rb | 4 +--- app/models/note.rb | 4 +--- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/app/models/event.rb b/app/models/event.rb index 8681c2e4d90..9e296c00281 100644 --- a/app/models/event.rb +++ b/app/models/event.rb @@ -70,6 +70,12 @@ class Event < ActiveRecord::Base author_id: user.id ) end + + def reset_event_cache_for(target) + Event.where(target_id: target.id, target_type: target.class.to_s). + order('id DESC').limit(100). + update_all(updated_at: Time.now) + end end def proper? diff --git a/app/models/issue.rb b/app/models/issue.rb index a116a9354cb..b5a72d535d9 100644 --- a/app/models/issue.rb +++ b/app/models/issue.rb @@ -67,8 +67,6 @@ class Issue < ActiveRecord::Base # Thus it will automatically generate a new fragment # when the event is updated because the key changes. def reset_events_cache - Event.where(target_id: self.id, target_type: 'Issue'). - order('id DESC').limit(100). - update_all(updated_at: Time.now) + Event.reset_event_cache_for(self) end end diff --git a/app/models/merge_request.rb b/app/models/merge_request.rb index 28486fb41c6..686add63bbf 100644 --- a/app/models/merge_request.rb +++ b/app/models/merge_request.rb @@ -287,9 +287,7 @@ class MergeRequest < ActiveRecord::Base # Thus it will automatically generate a new fragment # when the event is updated because the key changes. def reset_events_cache - Event.where(target_id: self.id, target_type: 'MergeRequest'). - order('id DESC').limit(100). - update_all(updated_at: Time.now) + Event.reset_event_cache_for(self) end def merge_commit_message diff --git a/app/models/note.rb b/app/models/note.rb index ed4829b2b39..7ff6444cc9b 100644 --- a/app/models/note.rb +++ b/app/models/note.rb @@ -327,9 +327,7 @@ class Note < ActiveRecord::Base # Thus it will automatically generate a new fragment # when the event is updated because the key changes. def reset_events_cache - Event.where(target_id: self.id, target_type: 'Note'). - order('id DESC').limit(100). - update_all(updated_at: Time.now) + Event.reset_event_cache_for(self) end def set_references