Skip to content

Commit abd634b

Browse files
author
Igor Melnikov
committed
MAGETWO-62134: Create data converter that can process nested serialized data
Resolving code review feedback
1 parent b1bc6a3 commit abd634b

File tree

4 files changed

+44
-19
lines changed

4 files changed

+44
-19
lines changed

app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Creditmemo.php

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,11 @@
55
*/
66
namespace Magento\Bundle\Model\Sales\Order\Pdf\Items;
77

8+
use Magento\Framework\App\ObjectManager;
9+
use Magento\Framework\Serialize\Serializer\Json;
10+
811
/**
9-
* Sales Order Creditmemo Pdf default items renderer
12+
* Order creditmemo pdf default items renderer
1013
*/
1114
class Creditmemo extends AbstractItems
1215
{
@@ -18,6 +21,8 @@ class Creditmemo extends AbstractItems
1821
protected $string;
1922

2023
/**
24+
* Constructor
25+
*
2126
* @param \Magento\Framework\Model\Context $context
2227
* @param \Magento\Framework\Registry $registry
2328
* @param \Magento\Tax\Helper\Data $taxData
@@ -27,6 +32,7 @@ class Creditmemo extends AbstractItems
2732
* @param \Magento\Framework\Model\ResourceModel\AbstractResource $resource
2833
* @param \Magento\Framework\Data\Collection\AbstractDb $resourceCollection
2934
* @param array $data
35+
* @param \Magento\Framework\Serialize\Serializer\Json|null $serializer
3036
*/
3137
public function __construct(
3238
\Magento\Framework\Model\Context $context,
@@ -37,9 +43,11 @@ public function __construct(
3743
\Magento\Framework\Stdlib\StringUtils $string,
3844
\Magento\Framework\Model\ResourceModel\AbstractResource $resource = null,
3945
\Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null,
40-
array $data = []
46+
array $data = [],
47+
Json $serializer = null
4148
) {
4249
$this->string = $string;
50+
$serializer = $serializer ?: ObjectManager::getInstance()->get(Json::class);
4351
parent::__construct(
4452
$context,
4553
$registry,
@@ -48,7 +56,8 @@ public function __construct(
4856
$filterManager,
4957
$resource,
5058
$resourceCollection,
51-
$data
59+
$data,
60+
$serializer
5261
);
5362
}
5463

app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Invoice.php

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,15 @@
33
* Copyright © 2016 Magento. All rights reserved.
44
* See COPYING.txt for license details.
55
*/
6-
7-
// @codingStandardsIgnoreFile
8-
96
namespace Magento\Bundle\Model\Sales\Order\Pdf\Items;
107

8+
use Magento\Framework\App\ObjectManager;
9+
use Magento\Framework\Serialize\Serializer\Json;
10+
1111
/**
12-
* Sales Order Invoice Pdf default items renderer
12+
* Order invoice pdf default items renderer
13+
*
14+
* @codingStandardsIgnoreFile
1315
*/
1416
class Invoice extends AbstractItems
1517
{
@@ -19,6 +21,8 @@ class Invoice extends AbstractItems
1921
protected $string;
2022

2123
/**
24+
* Constructor
25+
*
2226
* @param \Magento\Framework\Model\Context $context
2327
* @param \Magento\Framework\Registry $registry
2428
* @param \Magento\Tax\Helper\Data $taxData
@@ -28,6 +32,7 @@ class Invoice extends AbstractItems
2832
* @param \Magento\Framework\Model\ResourceModel\AbstractResource $resource
2933
* @param \Magento\Framework\Data\Collection\AbstractDb $resourceCollection
3034
* @param array $data
35+
* @param \Magento\Framework\Serialize\Serializer\Json|null $serializer
3136
*/
3237
public function __construct(
3338
\Magento\Framework\Model\Context $context,
@@ -38,8 +43,10 @@ public function __construct(
3843
\Magento\Framework\Stdlib\StringUtils $coreString,
3944
\Magento\Framework\Model\ResourceModel\AbstractResource $resource = null,
4045
\Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null,
41-
array $data = []
46+
array $data = [],
47+
Json $serializer = null
4248
) {
49+
$serializer = $serializer ?: ObjectManager::getInstance()->get(Json::class);
4350
$this->string = $coreString;
4451
parent::__construct(
4552
$context,
@@ -49,7 +56,8 @@ public function __construct(
4956
$filterManager,
5057
$resource,
5158
$resourceCollection,
52-
$data
59+
$data,
60+
$serializer
5361
);
5462
}
5563

app/code/Magento/Bundle/Model/Sales/Order/Pdf/Items/Shipment.php

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,11 @@
55
*/
66
namespace Magento\Bundle\Model\Sales\Order\Pdf\Items;
77

8+
use Magento\Framework\App\ObjectManager;
9+
use Magento\Framework\Serialize\Serializer\Json;
10+
811
/**
9-
* Sales Order Shipment Pdf items renderer
12+
* Order shipment pdf items renderer
1013
*/
1114
class Shipment extends AbstractItems
1215
{
@@ -16,6 +19,8 @@ class Shipment extends AbstractItems
1619
protected $string;
1720

1821
/**
22+
* Constructor
23+
*
1924
* @param \Magento\Framework\Model\Context $context
2025
* @param \Magento\Framework\Registry $registry
2126
* @param \Magento\Tax\Helper\Data $taxData
@@ -25,6 +30,7 @@ class Shipment extends AbstractItems
2530
* @param \Magento\Framework\Model\ResourceModel\AbstractResource $resource
2631
* @param \Magento\Framework\Data\Collection\AbstractDb $resourceCollection
2732
* @param array $data
33+
* @param \Magento\Framework\Serialize\Serializer\Json|null $serializer
2834
*/
2935
public function __construct(
3036
\Magento\Framework\Model\Context $context,
@@ -35,9 +41,11 @@ public function __construct(
3541
\Magento\Framework\Stdlib\StringUtils $string,
3642
\Magento\Framework\Model\ResourceModel\AbstractResource $resource = null,
3743
\Magento\Framework\Data\Collection\AbstractDb $resourceCollection = null,
38-
array $data = []
44+
array $data = [],
45+
Json $serializer = null
3946
) {
4047
$this->string = $string;
48+
$serializer = $serializer ?: ObjectManager::getInstance()->get(Json::class);
4149
parent::__construct(
4250
$context,
4351
$registry,
@@ -46,7 +54,8 @@ public function __construct(
4654
$filterManager,
4755
$resource,
4856
$resourceCollection,
49-
$data
57+
$data,
58+
$serializer
5059
);
5160
}
5261

app/code/Magento/Bundle/Test/Unit/Model/Sales/Order/Pdf/Items/AbstractItemsTest.php

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,13 @@ protected function setUp()
2727
);
2828

2929
$objectManager = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this);
30-
$this->model = $objectManager->getObject(\Magento\Bundle\Model\Sales\Order\Pdf\Items\Shipment::class);
31-
3230
$this->serializer = $this->getMock(\Magento\Framework\Serialize\Serializer\Json::class);
33-
$reflection = new \ReflectionClass(\Magento\Bundle\Model\Sales\Order\Pdf\Items\AbstractItems::class);
34-
$reflectionProperty = $reflection->getProperty('serializer');
35-
$reflectionProperty->setAccessible(true);
36-
$reflectionProperty->setValue($this->model, $this->serializer);
37-
31+
$this->model = $objectManager->getObject(
32+
\Magento\Bundle\Model\Sales\Order\Pdf\Items\Shipment::class,
33+
[
34+
'serializer' => $this->serializer
35+
]
36+
);
3837
}
3938

4039
/**

0 commit comments

Comments
 (0)