Files
piratepoet/mailpoet/lib/Services/SubscribersCountReporter.php
Rostislav Wolny d9bec53efa Introduce new service for reporting subscriber stats
Bridge is a low level service that processes requests and responses to/from Bridge API.
This change is needed so that we can remove dependency on MailPoet\Util\License\Features\Subscribers
service from the Bridge. The dependecy is a higher level service and may easily cause a circular dependency issue.
[MAILPOET-5191]
2023-05-10 13:05:37 +02:00

27 lines
625 B
PHP

<?php declare(strict_types = 1);
namespace MailPoet\Services;
use MailPoet\Util\License\Features\Subscribers;
class SubscribersCountReporter {
/** @var Bridge */
private $bridge;
/** @var Subscribers */
private $subscribersFeature;
public function __construct(
Bridge $bridge,
Subscribers $subscribersFeature
) {
$this->bridge = $bridge;
$this->subscribersFeature = $subscribersFeature;
}
public function report(string $key): bool {
$subscribersCount = $this->subscribersFeature->getSubscribersCount();
return $this->bridge->updateSubscriberCount($key, $subscribersCount);
}
}