From 8a9a5028dcd48d12c22a50df54207451433c3e38 Mon Sep 17 00:00:00 2001 From: Alexey Skobkin Date: Tue, 28 Mar 2023 23:33:14 +0300 Subject: [PATCH] Ported SubscriptionsManager. --- .../Service/SubscriptionsManager.php | 55 ++++++------------- 1 file changed, 16 insertions(+), 39 deletions(-) rename {old/src/PointToolsBundle => src}/Service/SubscriptionsManager.php (67%) diff --git a/old/src/PointToolsBundle/Service/SubscriptionsManager.php b/src/Service/SubscriptionsManager.php similarity index 67% rename from old/src/PointToolsBundle/Service/SubscriptionsManager.php rename to src/Service/SubscriptionsManager.php index 4323865..a849000 100644 --- a/old/src/PointToolsBundle/Service/SubscriptionsManager.php +++ b/src/Service/SubscriptionsManager.php @@ -1,48 +1,26 @@ eventDispatcher = $eventDispatcher; - $this->logger = $logger; - $this->subscriptionRepo = $subscriptionRepo; - $this->subscriptionRecordRepo = $subscriptionRecordRepo; } - /** - * @param User $user - * @param User[] $newSubscribersList - */ - public function updateUserSubscribers(User $user, $newSubscribersList = []): void + /** @param User[] $newSubscribersList */ + public function updateUserSubscribers(User $user, array $newSubscribersList = []): void { // @todo optimize $tmpOldSubscribers = $user->getSubscribers(); @@ -86,7 +64,7 @@ class SubscriptionsManager $hash2[$user->getId()] = $user; } - return array_diff_key($hash1, $hash2); + return \array_diff_key($hash1, $hash2); } /** @@ -101,10 +79,10 @@ class SubscriptionsManager $subscription = new Subscription($user, $subscriber); $user->addSubscriber($subscription); - $this->subscriptionRepo->add($subscription); + $this->subscriptionRepo->save($subscription); $logEvent = new SubscriptionEvent($user, $subscriber, SubscriptionEvent::ACTION_SUBSCRIBE); - $this->subscriptionRecordRepo->add($logEvent); + $this->subscriptionRecordRepo->save($logEvent); $user->addNewSubscriberEvent($logEvent); } @@ -120,7 +98,7 @@ class SubscriptionsManager foreach ($subscribers as $subscriber) { $logEvent = new SubscriptionEvent($user, $subscriber, SubscriptionEvent::ACTION_UNSUBSCRIBE); - $this->subscriptionRecordRepo->add($logEvent); + $this->subscriptionRecordRepo->save($logEvent); $user->addNewSubscriberEvent($logEvent); } @@ -131,7 +109,6 @@ class SubscriptionsManager } /** - * @param User $user * @param User[] $subscribed * @param User[] $unsubscribed */ @@ -140,7 +117,7 @@ class SubscriptionsManager if (0 !== count($subscribed) || 0 !== count($unsubscribed)) { // Dispatching event $subscribersUpdatedEvent = new UserSubscribersUpdatedEvent($user, $subscribed, $unsubscribed); - $this->eventDispatcher->dispatch(UserSubscribersUpdatedEvent::NAME, $subscribersUpdatedEvent); + $this->eventDispatcher->dispatch($subscribersUpdatedEvent, UserSubscribersUpdatedEvent::NAME); } } } \ No newline at end of file