activityManager = $activityManager; } public function handle(Event $event): void { if ($event instanceof RoomCreatedEvent) { $subject = Provider::ROOM_CREATED; } elseif ($event instanceof RoomDeletedEvent) { $subject = Provider::ROOM_DELETED; } else { return; } $room = $event->getRoom(); $activityEvent = $this->activityManager->generateEvent(); $activityEvent->setApp(Application::ID); $activityEvent->setType(Setting::Identifier); $activityEvent->setAffectedUser($room->getUserId()); $activityEvent->setSubject($subject, [ 'id' => $room->getId(), 'name' => $room->getName(), ]); $this->activityManager->publish($activityEvent); } }