Skip to content
This repository was archived by the owner on May 20, 2019. It is now read-only.

Commit 0885828

Browse files
committed
magento-engcom/bulk-api#4 Support for Async operations in WebAPI
- Fixed static tests
1 parent b4375fe commit 0885828

File tree

2 files changed

+4
-48
lines changed

2 files changed

+4
-48
lines changed

app/code/Magento/WebapiAsync/Test/Unit/Model/ServiceConfigTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
* Copyright © Magento, Inc. All rights reserved.
44
* See COPYING.txt for license details.
55
*/
6-
namespace Magento\Webapi\Test\Unit\Model;
6+
namespace Magento\WebapiAsync\Test\Unit\Model;
77

88
use Magento\Framework\Serialize\SerializerInterface;
99
use Magento\Webapi\Model\Cache\Type\Webapi;

lib/internal/Magento/Framework/MessageQueue/MergerFactory.php

Lines changed: 3 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
* Copyright © Magento, Inc. All rights reserved.
44
* See COPYING.txt for license details.
55
*/
6-
76
namespace Magento\Framework\MessageQueue;
87

98
use Magento\Framework\ObjectManagerInterface;
@@ -25,7 +24,7 @@ class MergerFactory
2524
* @param ObjectManagerInterface $objectManager
2625
* @param string[] $mergers
2726
*/
28-
public function __construct(ObjectManagerInterface $objectManager, $mergers)
27+
public function __construct(ObjectManagerInterface $objectManager, $mergers = [])
2928
{
3029
$this->objectManager = $objectManager;
3130
$this->mergers = $mergers;
@@ -38,18 +37,11 @@ public function __construct(ObjectManagerInterface $objectManager, $mergers)
3837
*/
3938
public function create($consumerName)
4039
{
41-
$matchMergerWildcard = $this->matchConsumer($consumerName);
42-
43-
if (!isset($this->mergers[$consumerName]) && !isset($matchMergerWildcard)) {
40+
if (!isset($this->mergers[$consumerName])) {
4441
throw new \LogicException("Not found merger for consumer name '{$consumerName}'");
4542
}
4643

47-
if (isset($this->mergers[$consumerName])) {
48-
$mergerClassName = $this->mergers[$consumerName];
49-
} else {
50-
$mergerClassName = $this->mergers[$matchMergerWildcard];
51-
}
52-
44+
$mergerClassName = $this->mergers[$consumerName];
5345
$merger = $this->objectManager->get($mergerClassName);
5446

5547
if (!$merger instanceof MergerInterface) {
@@ -62,40 +54,4 @@ public function create($consumerName)
6254

6355
return $merger;
6456
}
65-
66-
/**
67-
* @param $consumerName
68-
* @return string|null
69-
*/
70-
private function matchConsumer($consumerName)
71-
{
72-
$patterns = [];
73-
foreach (array_keys($this->mergers) as $mergerFor) {
74-
if (strpos($mergerFor, '*') !== false || strpos($mergerFor, '#') !== false) {
75-
$patterns[$mergerFor] = $this->buildWildcardPattern($mergerFor);
76-
}
77-
}
78-
79-
foreach ($patterns as $mergerKey => $pattern) {
80-
if (preg_match($pattern, $consumerName)) {
81-
return $mergerKey;
82-
}
83-
}
84-
}
85-
86-
/**
87-
* Construct perl regexp pattern for matching topic names from wildcard key.
88-
*
89-
* @param string $wildcardKey
90-
* @return string
91-
*/
92-
private function buildWildcardPattern($wildcardKey)
93-
{
94-
$pattern = '/^' . str_replace('.', '\.', $wildcardKey);
95-
$pattern = str_replace('#', '.+', $pattern);
96-
$pattern = str_replace('*', '[^\.]+', $pattern);
97-
$pattern .= strpos($wildcardKey, '#') === strlen($wildcardKey) ? '/' : '$/';
98-
99-
return $pattern;
100-
}
10157
}

0 commit comments

Comments
 (0)