Class: WorkItems::UserPreferences::DestroyWorker

Inherits:
Object
  • Object
show all
Includes:
Gitlab::EventStore::Subscriber
Defined in:
app/workers/work_items/user_preferences/destroy_worker.rb

Instance Method Summary collapse

Methods included from Gitlab::EventStore::Subscriber

#handle_event_in, #perform

Instance Method Details

#handle_event(event) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'app/workers/work_items/user_preferences/destroy_worker.rb', line 14

def handle_event(event)
  case event.data[:source_type]
  when GroupMember::SOURCE_TYPE
    ::WorkItems::UserPreference.delete_by(
      user_id: event.data[:user_id],
      namespace_id: event.data[:source_id]
    )
  when ProjectMember::SOURCE_TYPE
    ::WorkItems::UserPreference.delete_by(
      user_id: event.data[:user_id],
      namespace: Project.project_namespace_for(id: event.data[:source_id])
    )
  end
end