Skip to content

Commit b2279da

Browse files
vgoncharenkoduhon
authored andcommitted
MAGETWO-94482: [2.3] Fixed procedure of creating mapping for dynamic fields in elasticsearch
- fix static tests
1 parent cf0c2dc commit b2279da

File tree

19 files changed

+59
-44
lines changed

19 files changed

+59
-44
lines changed

app/code/Magento/Elasticsearch/Elasticsearch5/Model/Adapter/BatchDataMapper/CategoryFieldsProvider.php

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,7 @@
1010
use Magento\AdvancedSearch\Model\Adapter\DataMapper\AdditionalFieldsProviderInterface;
1111
use Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\AttributeProvider;
1212
use Magento\Framework\App\ObjectManager;
13-
use Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\ResolverInterface
14-
as FieldNameResolver;
13+
use Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\ResolverInterface;
1514

1615
/**
1716
* Provide data mapping for categories fields
@@ -29,29 +28,29 @@ class CategoryFieldsProvider implements AdditionalFieldsProviderInterface
2928
private $attributeAdapterProvider;
3029

3130
/**
32-
* @var FieldNameResolver
31+
* @var ResolverInterface
3332
*/
3433
private $fieldNameResolver;
3534

3635
/**
3736
* @param Index $resourceIndex
3837
* @param AttributeProvider|null $attributeAdapterProvider
39-
* @param FieldNameResolver|null $fieldNameResolver
38+
* @param ResolverInterface|null $fieldNameResolver
4039
*/
4140
public function __construct(
4241
Index $resourceIndex,
4342
AttributeProvider $attributeAdapterProvider = null,
44-
FieldNameResolver $fieldNameResolver = null
43+
ResolverInterface $fieldNameResolver = null
4544
) {
4645
$this->resourceIndex = $resourceIndex;
4746
$this->attributeAdapterProvider = $attributeAdapterProvider ?: ObjectManager::getInstance()
4847
->get(AttributeProvider::class);
4948
$this->fieldNameResolver = $fieldNameResolver ?: ObjectManager::getInstance()
50-
->get(FieldNameResolver::class);
49+
->get(ResolverInterface::class);
5150
}
5251

5352
/**
54-
* {@inheritdoc}
53+
* @inheritdoc
5554
*/
5655
public function getFields(array $productIds, $storeId)
5756
{

app/code/Magento/Elasticsearch/Elasticsearch5/Model/Adapter/DataMapper/ProductDataMapper.php

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,11 @@
1717
use Magento\Elasticsearch\Model\Adapter\FieldType\Date as DateFieldType;
1818
use Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\AttributeProvider;
1919
use Magento\Framework\App\ObjectManager;
20-
use Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\ResolverInterface
21-
as FieldNameResolver;
20+
use Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\ResolverInterface;
2221

2322
/**
23+
* Don't use this product data mapper class.
24+
*
2425
* @deprecated 100.2.0
2526
* @see \Magento\Elasticsearch\Model\Adapter\BatchDataMapperInterface
2627
*/
@@ -89,7 +90,7 @@ class ProductDataMapper implements DataMapperInterface
8990
private $attributeAdapterProvider;
9091

9192
/**
92-
* @var FieldNameResolver
93+
* @var ResolverInterface
9394
*/
9495
private $fieldNameResolver;
9596

@@ -103,7 +104,7 @@ class ProductDataMapper implements DataMapperInterface
103104
* @param StoreManagerInterface $storeManager
104105
* @param DateFieldType $dateFieldType
105106
* @param AttributeProvider|null $attributeAdapterProvider
106-
* @param FieldNameResolver|null $fieldNameResolver
107+
* @param ResolverInterface|null $fieldNameResolver
107108
*/
108109
public function __construct(
109110
Builder $builder,
@@ -113,7 +114,7 @@ public function __construct(
113114
StoreManagerInterface $storeManager,
114115
DateFieldType $dateFieldType,
115116
AttributeProvider $attributeAdapterProvider = null,
116-
FieldNameResolver $fieldNameResolver = null
117+
ResolverInterface $fieldNameResolver = null
117118
) {
118119
$this->builder = $builder;
119120
$this->attributeContainer = $attributeContainer;
@@ -124,7 +125,7 @@ public function __construct(
124125
$this->attributeAdapterProvider = $attributeAdapterProvider ?: ObjectManager::getInstance()
125126
->get(AttributeProvider::class);
126127
$this->fieldNameResolver = $fieldNameResolver ?: ObjectManager::getInstance()
127-
->get(FieldNameResolver::class);
128+
->get(ResolverInterface::class);
128129

129130
$this->mediaGalleryRoles = [
130131
self::MEDIA_ROLE_IMAGE,
@@ -226,6 +227,8 @@ protected function processAdvancedAttributes($productId, array $productIndexData
226227
}
227228

228229
/**
230+
* Check value.
231+
*
229232
* @param mixed $value
230233
* @param Attribute $attribute
231234
* @param string $storeId
@@ -316,6 +319,8 @@ protected function getProductMediaGalleryData($media, $roles)
316319
}
317320

318321
/**
322+
* Get media role image.
323+
*
319324
* @param string $file
320325
* @param array $roles
321326
* @return string
@@ -326,6 +331,8 @@ protected function getMediaRoleImage($file, $roles)
326331
}
327332

328333
/**
334+
* Get media role small image.
335+
*
329336
* @param string $file
330337
* @param array $roles
331338
* @return string
@@ -336,6 +343,8 @@ protected function getMediaRoleSmallImage($file, $roles)
336343
}
337344

338345
/**
346+
* Get media role thumbnail.
347+
*
339348
* @param string $file
340349
* @param array $roles
341350
* @return string
@@ -346,6 +355,8 @@ protected function getMediaRoleThumbnail($file, $roles)
346355
}
347356

348357
/**
358+
* Get media role swatch image.
359+
*
349360
* @param string $file
350361
* @param array $roles
351362
* @return string

app/code/Magento/Elasticsearch/Elasticsearch5/Model/Adapter/FieldMapper/Product/FieldProvider/FieldIndex/IndexResolver.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ public function __construct(
5252
}
5353

5454
/**
55-
* {@inheritdoc}
55+
* @inheritdoc
5656
*/
5757
public function getFieldIndex(AttributeAdapter $attribute)
5858
{

app/code/Magento/Elasticsearch/Elasticsearch5/Model/Adapter/FieldMapper/ProductFieldMapper.php

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,7 @@
1010
use Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\AttributeProvider;
1111
use Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProviderInterface;
1212
use Magento\Elasticsearch\Model\Adapter\FieldMapperInterface;
13-
use Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\ResolverInterface
14-
as FieldNameResolver;
13+
use Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\ResolverInterface;
1514
use Magento\Framework\App\ObjectManager;
1615
use Magento\Elasticsearch\Elasticsearch5\Model\Adapter\FieldType;
1716
use Magento\Framework\Registry;
@@ -59,7 +58,7 @@ class ProductFieldMapper implements FieldMapperInterface
5958
private $attributeAdapterProvider;
6059

6160
/**
62-
* @var FieldNameResolver
61+
* @var ResolverInterface
6362
*/
6463
private $fieldNameResolver;
6564

@@ -74,7 +73,7 @@ class ProductFieldMapper implements FieldMapperInterface
7473
* @param CustomerSession $customerSession
7574
* @param StoreManager $storeManager
7675
* @param Registry $coreRegistry
77-
* @param FieldNameResolver|null $fieldNameResolver
76+
* @param ResolverInterface|null $fieldNameResolver
7877
* @param AttributeProvider|null $attributeAdapterProvider
7978
* @param FieldProviderInterface|null $fieldProvider
8079
*/
@@ -84,7 +83,7 @@ public function __construct(
8483
CustomerSession $customerSession,
8584
StoreManager $storeManager,
8685
Registry $coreRegistry,
87-
FieldNameResolver $fieldNameResolver = null,
86+
ResolverInterface $fieldNameResolver = null,
8887
AttributeProvider $attributeAdapterProvider = null,
8988
FieldProviderInterface $fieldProvider = null
9089
) {
@@ -94,7 +93,7 @@ public function __construct(
9493
$this->storeManager = $storeManager;
9594
$this->coreRegistry = $coreRegistry;
9695
$this->fieldNameResolver = $fieldNameResolver ?: ObjectManager::getInstance()
97-
->get(FieldNameResolver::class);
96+
->get(ResolverInterface::class);
9897
$this->attributeAdapterProvider = $attributeAdapterProvider ?: ObjectManager::getInstance()
9998
->get(AttributeProvider::class);
10099
$this->fieldProvider = $fieldProvider ?: ObjectManager::getInstance()

app/code/Magento/Elasticsearch/Elasticsearch5/Model/Adapter/FieldType.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,8 @@ class FieldType
3636
/**#@-*/
3737

3838
/**
39+
* Get field type.
40+
*
3941
* @deprecated
4042
* @see ResolverInterface::getFieldType
4143
*

app/code/Magento/Elasticsearch/Model/Adapter/BatchDataMapper/CategoryFieldsProvider.php

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,7 @@
1010
use Magento\AdvancedSearch\Model\Adapter\DataMapper\AdditionalFieldsProviderInterface;
1111
use Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\AttributeProvider;
1212
use Magento\Framework\App\ObjectManager;
13-
use Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\ResolverInterface
14-
as FieldNameResolver;
13+
use Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\ResolverInterface;
1514

1615
/**
1716
* Provide data mapping for categories fields
@@ -29,25 +28,25 @@ class CategoryFieldsProvider implements AdditionalFieldsProviderInterface
2928
private $attributeAdapterProvider;
3029

3130
/**
32-
* @var FieldNameResolver
31+
* @var ResolverInterface
3332
*/
3433
private $fieldNameResolver;
3534

3635
/**
3736
* @param Index $resourceIndex
3837
* @param AttributeProvider|null $attributeAdapterProvider
39-
* @param FieldNameResolver|null $fieldNameResolver
38+
* @param ResolverInterface|null $fieldNameResolver
4039
*/
4140
public function __construct(
4241
Index $resourceIndex,
4342
AttributeProvider $attributeAdapterProvider = null,
44-
FieldNameResolver $fieldNameResolver = null
43+
ResolverInterface $fieldNameResolver = null
4544
) {
4645
$this->resourceIndex = $resourceIndex;
4746
$this->attributeAdapterProvider = $attributeAdapterProvider ?: ObjectManager::getInstance()
4847
->get(AttributeProvider::class);
4948
$this->fieldNameResolver = $fieldNameResolver ?: ObjectManager::getInstance()
50-
->get(FieldNameResolver::class);
49+
->get(ResolverInterface::class);
5150
}
5251

5352
/**

app/code/Magento/Elasticsearch/Model/Adapter/BatchDataMapper/PriceFieldsProvider.php

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,7 @@
1212
use Magento\CatalogSearch\Model\Indexer\Fulltext\Action\DataProvider;
1313
use Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\AttributeProvider;
1414
use Magento\Framework\App\ObjectManager;
15-
use Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\ResolverInterface
16-
as FieldNameResolver;
15+
use Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\ResolverInterface;
1716

1817
/**
1918
* Provide data mapping for price fields
@@ -41,7 +40,7 @@ class PriceFieldsProvider implements AdditionalFieldsProviderInterface
4140
private $attributeAdapterProvider;
4241

4342
/**
44-
* @var FieldNameResolver
43+
* @var ResolverInterface
4544
*/
4645
private $fieldNameResolver;
4746

@@ -50,26 +49,26 @@ class PriceFieldsProvider implements AdditionalFieldsProviderInterface
5049
* @param DataProvider $dataProvider
5150
* @param StoreManagerInterface $storeManager
5251
* @param AttributeProvider|null $attributeAdapterProvider
53-
* @param FieldNameResolver|null $fieldNameResolver
52+
* @param ResolverInterface|null $fieldNameResolver
5453
*/
5554
public function __construct(
5655
Index $resourceIndex,
5756
DataProvider $dataProvider,
5857
StoreManagerInterface $storeManager,
5958
AttributeProvider $attributeAdapterProvider = null,
60-
FieldNameResolver $fieldNameResolver = null
59+
ResolverInterface $fieldNameResolver = null
6160
) {
6261
$this->resourceIndex = $resourceIndex;
6362
$this->dataProvider = $dataProvider;
6463
$this->storeManager = $storeManager;
6564
$this->attributeAdapterProvider = $attributeAdapterProvider ?: ObjectManager::getInstance()
6665
->get(AttributeProvider::class);
6766
$this->fieldNameResolver = $fieldNameResolver ?: ObjectManager::getInstance()
68-
->get(FieldNameResolver::class);
67+
->get(ResolverInterface::class);
6968
}
7069

7170
/**
72-
* {@inheritdoc}
71+
* @inheritdoc
7372
*/
7473
public function getFields(array $productIds, $storeId)
7574
{

app/code/Magento/Elasticsearch/Model/Adapter/DataMapper/ProductDataMapper.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@
99
use Magento\Elasticsearch\Elasticsearch5\Model\Adapter\DataMapper\ProductDataMapper as ElasticSearch5ProductDataMapper;
1010

1111
/**
12+
* Don't use this product data mapper class.
13+
*
1214
* @deprecated 100.2.0
1315
* @see \Magento\Elasticsearch\Model\Adapter\BatchDataMapperInterface
1416
*/

app/code/Magento/Elasticsearch/Model/Adapter/Elasticsearch.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -284,8 +284,8 @@ protected function getDocsArrayInBulkIndexFormat(
284284
* Checks whether Elasticsearch index and alias exists.
285285
*
286286
* @param int $storeId
287-
* @param bool $checkAlias
288287
* @param string $mappedIndexerId
288+
* @param bool $checkAlias
289289
* @return $this
290290
*/
291291
public function checkIndex(

app/code/Magento/Elasticsearch/Model/Adapter/FieldMapper/Product/AttributeProvider.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ public function __construct(
6565
}
6666

6767
/**
68-
* {@inheritdoc}
68+
* @inheritdoc
6969
*/
7070
public function getByAttributeCode(string $attributeCode): AttributeAdapter
7171
{

0 commit comments

Comments
 (0)