Skip to content

Commit e4fb08c

Browse files
committed
MAGE-941 Reclassify Events model under Service namespace
1 parent 9e9b2de commit e4fb08c

File tree

7 files changed

+48
-57
lines changed

7 files changed

+48
-57
lines changed

Api/Insights/EventsInterface.php renamed to Api/Insights/EventsProcessorInterface.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
use Magento\Sales\Model\Order;
1010
use Magento\Store\Model\StoreManagerInterface;
1111

12-
interface EventsInterface
12+
interface EventsProcessorInterface
1313
{
1414
/** @var string */
1515
public const EVENT_KEY_SUBTYPE = 'eventSubtype';
@@ -37,13 +37,13 @@ interface EventsInterface
3737
/** @var int */
3838
public const MAX_EVENTS_PER_REQUEST = 1000;
3939

40-
public function setInsightsClient(InsightsClient $client): EventsInterface;
40+
public function setInsightsClient(InsightsClient $client): EventsProcessorInterface;
4141

42-
public function setAuthenticatedUserToken(string $token): EventsInterface;
42+
public function setAuthenticatedUserToken(string $token): EventsProcessorInterface;
4343

44-
public function setAnonymousUserToken(string $token): EventsInterface;
44+
public function setAnonymousUserToken(string $token): EventsProcessorInterface;
4545

46-
public function setStoreManager(StoreManagerInterface $storeManager): EventsInterface;
46+
public function setStoreManager(StoreManagerInterface $storeManager): EventsProcessorInterface;
4747

4848
/**
4949
* @param string $eventName

Helper/InsightsHelper.php

Lines changed: 19 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22

33
namespace Algolia\AlgoliaSearch\Helper;
44

5-
use Algolia\AlgoliaSearch\Api\Insights\EventsInterface;
6-
use Algolia\AlgoliaSearch\Api\Insights\EventsInterfaceFactory;
5+
use Algolia\AlgoliaSearch\Api\Insights\EventsProcessorInterface;
6+
use Algolia\AlgoliaSearch\Api\Insights\EventsProcessorInterfaceFactory;
77
use Algolia\AlgoliaSearch\Api\InsightsClient;
88
use Algolia\AlgoliaSearch\Helper\Configuration\PersonalizationHelper;
99
use Magento\Customer\Model\Customer;
@@ -40,31 +40,20 @@ class InsightsHelper
4040
/** @var InsightsClient|null */
4141
protected ?InsightsClient $insightsClient = null;
4242

43-
/** @var EventsInterface|null */
44-
protected ?EventsInterface $eventsModel = null;
43+
/** @var EventsProcessorInterface|null */
44+
protected ?EventsProcessorInterface $eventsProcessor = null;
4545

46-
/**
47-
* InsightsHelper constructor.
48-
*
49-
* @param ConfigHelper $configHelper
50-
* @param PersonalizationHelper $personalizationHelper
51-
* @param CookieManagerInterface $cookieManager
52-
* @param CookieMetadataFactory $cookieMetadataFactory
53-
* @param CustomerSession $customerSession
54-
* @param EventsInterfaceFactory $eventsFactory
55-
* @param StoreManagerInterface $storeManager
56-
* @param Logger $logger
57-
*/
5846
public function __construct(
59-
private readonly ConfigHelper $configHelper,
60-
private readonly PersonalizationHelper $personalizationHelper,
61-
private readonly CookieManagerInterface $cookieManager,
62-
private readonly CookieMetadataFactory $cookieMetadataFactory,
63-
private readonly CustomerSession $customerSession,
64-
private readonly EventsInterfaceFactory $eventsFactory,
65-
private readonly StoreManagerInterface $storeManager,
66-
private readonly Logger $logger
67-
) { }
47+
private readonly ConfigHelper $configHelper,
48+
private readonly PersonalizationHelper $personalizationHelper,
49+
private readonly CookieManagerInterface $cookieManager,
50+
private readonly CookieMetadataFactory $cookieMetadataFactory,
51+
private readonly CustomerSession $customerSession,
52+
private readonly EventsProcessorInterfaceFactory $eventsProcessorFactory,
53+
private readonly StoreManagerInterface $storeManager,
54+
private readonly Logger $logger
55+
)
56+
{}
6857

6958
public function getPersonalizationHelper(): PersonalizationHelper
7059
{
@@ -93,19 +82,19 @@ public function getInsightsClient(): InsightsClient
9382
}
9483

9584
/**
96-
* @return EventsInterface
85+
* @return EventsProcessorInterface
9786
*/
98-
public function getEventsModel(): EventsInterface
87+
public function getEventsProcessor(): EventsProcessorInterface
9988
{
100-
if (!$this->eventsModel) {
101-
$this->eventsModel = $this->eventsFactory->create([
89+
if (!$this->eventsProcessor) {
90+
$this->eventsProcessor = $this->eventsProcessorFactory->create([
10291
'client' => $this->getInsightsClient(),
10392
'userToken' => $this->getAnonymousUserToken(),
10493
'authenticatedUserToken' => $this->getAuthenticatedUserToken(),
10594
'storeManager' => $this->storeManager
10695
]);
10796
}
108-
return $this->eventsModel;
97+
return $this->eventsProcessor;
10998
}
11099

111100
public function getAnonymousUserToken(): string

Observer/Insights/CheckoutCartProductAddAfter.php

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,12 @@ class CheckoutCartProductAddAfter implements ObserverInterface
2121
protected PersonalizationHelper $personalizationHelper;
2222

2323
public function __construct(
24-
protected ProductHelper $productHelper,
25-
protected InsightsHelper $insightsHelper,
24+
protected ProductHelper $productHelper,
25+
protected InsightsHelper $insightsHelper,
2626
protected RequestInterface $request,
27-
protected LoggerInterface $logger
28-
) {
27+
protected LoggerInterface $logger
28+
)
29+
{
2930
$this->configHelper = $this->insightsHelper->getConfigHelper();
3031
$this->personalizationHelper = $this->insightsHelper->getPersonalizationHelper();
3132
}
@@ -66,7 +67,7 @@ public function execute(Observer $observer): void
6667
return;
6768
}
6869

69-
$eventsModel = $this->insightsHelper->getEventsModel();
70+
$eventsProcessor = $this->insightsHelper->getEventsProcessor();
7071

7172
$queryId = $this->request->getParam('queryID');
7273

@@ -78,7 +79,7 @@ public function execute(Observer $observer): void
7879
// This logic handles both perso and conversion tracking
7980
if ($isAddToCartTracked) {
8081
try {
81-
$eventsModel->convertAddToCart(
82+
$eventsProcessor->convertAddToCart(
8283
__('Added to Cart'),
8384
$this->productHelper->getIndexName($storeId),
8485
$quoteItem,

Observer/Insights/CheckoutOnePageControllerSuccessAction.php

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,12 @@ class CheckoutOnePageControllerSuccessAction implements ObserverInterface
1919
public const PLACE_ORDER_EVENT_NAME = 'Placed order';
2020

2121
public function __construct(
22-
protected ProductHelper $productHelper,
23-
protected InsightsHelper $insightsHelper,
24-
protected OrderFactory $orderFactory,
22+
protected ProductHelper $productHelper,
23+
protected InsightsHelper $insightsHelper,
24+
protected OrderFactory $orderFactory,
2525
protected LoggerInterface $logger
26-
) {}
26+
)
27+
{}
2728

2829
/**
2930
* @param Observer $observer
@@ -52,10 +53,10 @@ public function execute(Observer $observer): void
5253
return;
5354
}
5455

55-
$eventsModel = $this->insightsHelper->getEventsModel();
56+
$eventsProcessor = $this->insightsHelper->getEventsProcessor();
5657

5758
try {
58-
$eventsModel->convertPurchase(
59+
$eventsProcessor->convertPurchase(
5960
__(self::PLACE_ORDER_EVENT_NAME),
6061
$indexName,
6162
$order

Observer/Insights/WishlistProductAddAfter.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,13 +35,13 @@ public function execute(Observer $observer): void
3535
return;
3636
}
3737

38-
$eventsModel = $this->insightsHelper->getEventsModel();
38+
$eventsProcessor = $this->insightsHelper->getEventsProcessor();
3939
$productIds = array_map(function (Item $item) {
4040
return $item->getProductId();
4141
}, $items);
4242

4343
try {
44-
$eventsModel->convertedObjectIDs(
44+
$eventsProcessor->convertedObjectIDs(
4545
__('Added to Wishlist'),
4646
$this->productHelper->getIndexName($firstItem->getStoreId()),
4747
$productIds

Model/Insights/Events.php renamed to Service/Insights/EventsProcessor.php

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<?php
22

3-
namespace Algolia\AlgoliaSearch\Model\Insights;
3+
namespace Algolia\AlgoliaSearch\Service\Insights;
44

5-
use Algolia\AlgoliaSearch\Api\Insights\EventsInterface;
5+
use Algolia\AlgoliaSearch\Api\Insights\EventsProcessorInterface;
66
use Algolia\AlgoliaSearch\Api\InsightsClient;
77
use Algolia\AlgoliaSearch\Exceptions\AlgoliaException;
88
use Algolia\AlgoliaSearch\Helper\InsightsHelper;
@@ -12,7 +12,7 @@
1212
use Magento\Sales\Model\Order\Item as OrderItem;
1313
use Magento\Store\Model\StoreManagerInterface;
1414

15-
class Events implements EventsInterface
15+
class EventsProcessor implements EventsProcessorInterface
1616
{
1717
/** @var string */
1818
protected const NO_QUERY_ID_KEY = '__NO_QUERY_ID__';
@@ -24,25 +24,25 @@ public function __construct(
2424
protected ?StoreManagerInterface $storeManager = null
2525
) {}
2626

27-
public function setInsightsClient(InsightsClient $client): EventsInterface
27+
public function setInsightsClient(InsightsClient $client): EventsProcessorInterface
2828
{
2929
$this->client = $client;
3030
return $this;
3131
}
3232

33-
public function setAnonymousUserToken(string $token): EventsInterface
33+
public function setAnonymousUserToken(string $token): EventsProcessorInterface
3434
{
3535
$this->userToken = $token;
3636
return $this;
3737
}
3838

39-
public function setAuthenticatedUserToken(string $token): EventsInterface
39+
public function setAuthenticatedUserToken(string $token): EventsProcessorInterface
4040
{
4141
$this->authenticatedUserToken = $token;
4242
return $this;
4343
}
4444

45-
public function setStoreManager(StoreManagerInterface $storeManager): EventsInterface
45+
public function setStoreManager(StoreManagerInterface $storeManager): EventsProcessorInterface
4646
{
4747
$this->storeManager = $storeManager;
4848
return $this;

etc/di.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
<!-- Declare implementation for QueueArchiveInterface -->
3434
<preference for="Algolia\AlgoliaSearch\Api\Data\QueueArchiveInterface" type="Algolia\AlgoliaSearch\Model\QueueArchive" />
3535

36-
<preference for="Algolia\AlgoliaSearch\Api\Insights\EventsInterface" type="Algolia\AlgoliaSearch\Model\Insights\Events"/>
36+
<preference for="Algolia\AlgoliaSearch\Api\Insights\EventsProcessorInterface" type="Algolia\AlgoliaSearch\Service\Insights\EventsProcessor"/>
3737

3838
<preference for="Algolia\AlgoliaSearch\Api\Product\ReplicaManagerInterface" type="Algolia\AlgoliaSearch\Service\Product\ReplicaManager"/>
3939

0 commit comments

Comments
 (0)