Completed
Pull Request — master (#24)
by
unknown
02:12
created

loadAttributeOptionSwatchByOptionIdAndStoreId()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
dl 0
loc 4
ccs 0
cts 4
cp 0
rs 10
c 0
b 0
f 0
cc 1
eloc 2
nc 1
nop 2
crap 2
1
<?php
2
3
/**
4
 * TechDivision\Import\Attribute\Observers\AttributeOptionSwatchObserver
5
 *
6
 * NOTICE OF LICENSE
7
 *
8
 * This source file is subject to the Open Software License (OSL 3.0)
9
 * that is available through the world-wide-web at this URL:
10
 * http://opensource.org/licenses/osl-3.0.php
11
 *
12
 * PHP version 5
13
 *
14
 * @author    Tim Wagner <[email protected]>
15
 * @copyright 2016 TechDivision GmbH <[email protected]>
16
 * @license   http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
17
 * @link      https://github.com/techdivision/import-attribute
18
 * @link      http://www.techdivision.com
19
 */
20
21
namespace TechDivision\Import\Attribute\Observers;
22
23
use TechDivision\Import\Attribute\Utils\MemberNames;
24
use TechDivision\Import\Utils\StoreViewCodes;
25
26
/**
27
 * Observer that update's the attribute option swatchs found in the additional CSV file.
28
 *
29
 * @author    Tim Wagner <[email protected]>
30
 * @copyright 2016 TechDivision GmbH <[email protected]>
31
 * @license   http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
32
 * @link      https://github.com/techdivision/import-attribute
33
 * @link      http://www.techdivision.com
34
 */
35
class AttributeOptionSwatchUpdateObserver extends AttributeOptionSwatchObserver
36
{
37
38
    /**
39
     * Initialize the EAV attribute option value with the passed attributes and returns an instance.
40
     *
41
     * @param array $attr The EAV attribute option value attributes
42
     *
43
     * @return array The initialized EAV attribute option value
44
     */
45
    protected function initializeAttribute(array $attr)
46
    {
47
48
        // initialize the data to load the EAV attribute option swatch
49
        $optionId = isset($attr[MemberNames::OPTION_ID]) ? $attr[MemberNames::OPTION_ID] : null;
50
        $storeId = $this->getRowStoreId(StoreViewCodes::ADMIN);
0 ignored issues
show
Deprecated Code introduced by
The method TechDivision\Import\Obse...server::getRowStoreId() has been deprecated with message: Will be removed with version 1.0.0, use subject method instead

This method has been deprecated. The supplier of the class has supplied an explanatory message.

The explanatory message should give you some clue as to whether and when the method will be removed from the class and what other method or class to use instead.

Loading history...
51
52
        // try to load the EAV attribute option swatch
53
        if ($attributeOptionSwatch = $this->loadAttributeOptionSwatchByOptionIdAndStoreId($optionId, $storeId)) {
54
            return $this->mergeEntity($attributeOptionSwatch, $attr);
55
        }
56
57
        // simply return the attributes
58
        return $attr;
59
    }
60
61
    /**
62
     * Load's and return's the EAV attribute option swatch with the passed code, store ID, value and type.
63
     *
64
     * @param integer $optionId
65
     * @param integer $storeId
66
     *
67
     * @return array The EAV attribute option swatch
68
     */
69
    protected function loadAttributeOptionSwatchByOptionIdAndStoreId($optionId, $storeId)
70
    {
71
        return $this->getAttributeBunchProcessor()->loadAttributeOptionSwatchByOptionIdAndStoreId($optionId, $storeId);
72
    }
73
}
74