[
'wp_user_id',
'is_woocommerce_user',
'email',
'created_at',
'last_subscribed_at',
],
SubscriberCustomFieldEntity::class => [
'created_at',
],
SubscriberSegmentEntity::class => [
'created_at',
],
];
private const KEY_COLUMNS_FOR_BULK_UPDATE = [
SubscriberEntity::class => [
'email',
],
SubscriberCustomFieldEntity::class => [
'subscriber_id',
'custom_field_id',
],
];
/** @var EntityManager */
protected $entityManager;
/** @var SubscriberChangesNotifier */
private $subscriberChangesNotifier;
/** @var FilterHandler */
private $filterHandler;
/** @var SubscribersRepository */
private $subscribersRepository;
/** @var SubscriberCustomFieldRepository */
private $subscriberCustomFieldRepository;
public function __construct(
EntityManager $entityManager,
SubscriberChangesNotifier $changesNotifier,
FilterHandler $filterHandler,
SubscribersRepository $subscribersRepository,
SubscriberCustomFieldRepository $subscriberCustomFieldRepository
) {
$this->entityManager = $entityManager;
$this->subscriberChangesNotifier = $changesNotifier;
$this->filterHandler = $filterHandler;
$this->subscribersRepository = $subscribersRepository;
$this->subscriberCustomFieldRepository = $subscriberCustomFieldRepository;
}
/**
* @param class-string