Code Duplication    Length = 41-41 lines in 2 locations

src/Observers/AttributeOptionUpdateObserver.php 1 location

@@ 35-75 (lines=41) @@
32
 * @link      https://github.com/techdivision/import-attribute
33
 * @link      http://www.techdivision.com
34
 */
35
class AttributeOptionUpdateObserver extends AttributeOptionObserver
36
{
37
38
    /**
39
     * Initialize the EAV attribute option with the passed attributes and returns an instance.
40
     *
41
     * @param array $attr The EAV attribute option attributes
42
     *
43
     * @return array The initialized EAV attribute option
44
     */
45
    protected function initializeAttribute(array $attr)
46
    {
47
48
        // initialize the data to load the EAV attribute option
49
        $value = $this->getValue(ColumnKeys::VALUE);
50
        $storeId = $this->getRowStoreId(StoreViewCodes::ADMIN);
51
        $attributeCode = $this->getValue(ColumnKeys::ATTRIBUTE_CODE);
52
53
        // try to load the EAV attribute option
54
        if ($attributeOption = $this->loadAttributeOptionByAttributeCodeAndStoreIdAndValue($attributeCode, $storeId, $value)) {
55
            return $this->mergeEntity($attributeOption, $attr);
56
        }
57
58
        // simply return the attributes
59
        return $attr;
60
    }
61
62
    /**
63
     * Load's and return's the EAV attribute option with the passed code, store ID and value.
64
     *
65
     * @param string  $attributeCode The code of the EAV attribute option to load
66
     * @param integer $storeId       The store ID of the attribute option to load
67
     * @param string  $value         The value of the attribute option to load
68
     *
69
     * @return array The EAV attribute option
70
     */
71
    protected function loadAttributeOptionByAttributeCodeAndStoreIdAndValue($attributeCode, $storeId, $value)
72
    {
73
        return $this->getAttributeBunchProcessor()->loadAttributeOptionByAttributeCodeAndStoreIdAndValue($attributeCode, $storeId, $value);
74
    }
75
}
76

src/Observers/AttributeOptionValueUpdateObserver.php 1 location

@@ 35-75 (lines=41) @@
32
 * @link      https://github.com/techdivision/import-attribute
33
 * @link      http://www.techdivision.com
34
 */
35
class AttributeOptionValueUpdateObserver extends AttributeOptionValueObserver
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
49
        $value = $this->getValue(ColumnKeys::VALUE);
50
        $storeId = $this->getRowStoreId(StoreViewCodes::ADMIN);
51
        $attributeCode = $this->getValue(ColumnKeys::ATTRIBUTE_CODE);
52
53
        // try to load the EAV attribute option value
54
        if ($attributeOptionValue = $this->loadAttributeOptionValueByAttributeCodeAndStoreIdAndValue($attributeCode, $storeId, $value)) {
55
            return $this->mergeEntity($attributeOptionValue, $attr);
56
        }
57
58
        // simply return the attributes
59
        return $attr;
60
    }
61
62
    /**
63
     * Load's and return's the EAV attribute option value with the passed code, store ID and value.
64
     *
65
     * @param string  $attributeCode The code of the EAV attribute option to load
66
     * @param integer $storeId       The store ID of the attribute option to load
67
     * @param string  $value         The value of the attribute option to load
68
     *
69
     * @return array The EAV attribute option value
70
     */
71
    protected function loadAttributeOptionValueByAttributeCodeAndStoreIdAndValue($attributeCode, $storeId, $value)
72
    {
73
        return $this->getAttributeBunchProcessor()->loadAttributeOptionValueByAttributeCodeAndStoreIdAndValue($attributeCode, $storeId, $value);
74
    }
75
}
76