ImportProcessor   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 61
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 1

Test Coverage

Coverage 0%

Importance

Changes 0
Metric Value
wmc 1
lcom 0
cbo 1
dl 0
loc 61
rs 10
c 0
b 0
f 0
ccs 0
cts 35
cp 0

1 Method

Rating   Name   Duplication   Size   Complexity  
B __construct() 0 39 1
1
<?php
2
3
/**
4
 * TechDivision\Import\Model\Services\ImportProcessor
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-cli-magento
18
 * @link      http://www.techdivision.com
19
 */
20
21
namespace TechDivision\Import\Model\Services;
22
23
use Magento\Framework\App\ResourceConnection;
24
use TechDivision\Import\Assembler\CategoryAssembler;
25
use TechDivision\Import\Repositories\CategoryRepository;
26
use TechDivision\Import\Repositories\CategoryVarcharRepository;
27
use TechDivision\Import\Repositories\EavAttributeRepository;
28
use TechDivision\Import\Repositories\EavAttributeSetRepository;
29
use TechDivision\Import\Repositories\EavAttributeGroupRepository;
30
use TechDivision\Import\Repositories\EavEntityTypeRepository;
31
use TechDivision\Import\Repositories\StoreRepository;
32
use TechDivision\Import\Repositories\StoreWebsiteRepository;
33
use TechDivision\Import\Repositories\TaxClassRepository;
34
use TechDivision\Import\Repositories\LinkTypeRepository;
35
use TechDivision\Import\Repositories\LinkAttributeRepository;
36
use TechDivision\Import\Repositories\CoreConfigDataRepository;
37
38
use TechDivision\Import\Services\ImportProcessor as GenericImportProcessor;
39
40
/**
41
 * Processor implementation to load global data.
42
 *
43
 * @author    Tim Wagner <[email protected]>
44
 * @copyright 2016 TechDivision GmbH <[email protected]>
45
 * @license   http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
46
 * @link      https://github.com/techdivision/import-cli-magento
47
 * @link      http://www.techdivision.com
48
 */
49
class ImportProcessor extends GenericImportProcessor
50
{
51
52
    /**
53
     * Initialize the processor with the necessary assembler and repository instances.
54
     *
55
     * @param \Magento\Framework\App\ResourceConnection                     $connection                  The connection to use
56
     * @param \TechDivision\Import\Assembler\CategoryAssembler              $categoryAssembler           The category assembler instance
57
     * @param \TechDivision\Import\Repositories\CategoryRepository          $categoryRepository          The repository to access categories
58
     * @param \TechDivision\Import\Repositories\CategoryVarcharRepository   $categoryVarcharRepository   The repository to access category varchar values
59
     * @param \TechDivision\Import\Repositories\EavAttributeRepository      $eavAttributeRepository      The repository to access EAV attributes
60
     * @param \TechDivision\Import\Repositories\EavAttributeSetRepository   $eavAttributeSetRepository   The repository to access EAV attribute sets
61
     * @param \TechDivision\Import\Repositories\EavAttributeGroupRepository $eavAttributeGroupRepository The repository to access EAV attribute groups
62
     * @param \TechDivision\Import\Repositories\EavEntityTypeRepository     $eavEntityTypeRepository     The repository to access EAV entity types
63
     * @param \TechDivision\Import\Repositories\StoreRepository             $storeRepository             The repository to access stores
64
     * @param \TechDivision\Import\Repositories\StoreWebsiteRepository      $storeWebsiteRepository      The repository to access store websites
65
     * @param \TechDivision\Import\Repositories\TaxClassRepository          $taxClassRepository          The repository to access tax classes
66
     * @param \TechDivision\Import\Repositories\LinkTypeRepository          $linkTypeRepository          The repository to access link types
67
     * @param \TechDivision\Import\Repositories\LinkAttributeRepository     $linkAttributeRepository     The repository to access link attributes
68
     * @param \TechDivision\Import\Repositories\CoreConfigDataRepository    $coreConfigDataRepository    The repository to access the configuration
69
     */
70
    public function __construct(
71
        ResourceConnection $connection,
72
        CategoryAssembler $categoryAssembler,
73
        CategoryRepository $categoryRepository,
74
        CategoryVarcharRepository $categoryVarcharRepository,
75
        EavAttributeRepository $eavAttributeRepository,
76
        EavAttributeSetRepository $eavAttributeSetRepository,
77
        EavAttributeGroupRepository $eavAttributeGroupRepository,
78
        EavEntityTypeRepository $eavEntityTypeRepository,
79
        StoreRepository $storeRepository,
80
        StoreWebsiteRepository $storeWebsiteRepository,
81
        TaxClassRepository $taxClassRepository,
82
        LinkTypeRepository $linkTypeRepository,
83
        LinkAttributeRepository $linkAttributeRepository,
84
        CoreConfigDataRepository $coreConfigDataRepository
85
    ) {
86
87
        // initialize the PDO connection
88
        $connection = $this->connection->getConnection(ResourceConnection::DEFAULT_CONNECTION)
0 ignored issues
show
Bug introduced by
The method getConnection() does not seem to exist on object<TechDivision\Impo...on\ConnectionInterface>.

This check looks for calls to methods that do not seem to exist on a given type. It looks for the method on the type itself as well as in inherited classes or implemented interfaces.

This is most likely a typographical error or the method has been renamed.

Loading history...
89
                                       ->getConnection();
90
91
        // pass the arguments to the parent class
92
        parent::__construct(
93
            $connection,
94
            $categoryAssembler,
95
            $categoryRepository,
96
            $categoryVarcharRepository,
97
            $eavAttributeRepository,
98
            $eavAttributeSetRepository,
99
            $eavAttributeGroupRepository,
100
            $eavEntityTypeRepository,
101
            $storeRepository,
102
            $storeWebsiteRepository,
103
            $taxClassRepository,
104
            $linkTypeRepository,
105
            $linkAttributeRepository,
106
            $coreConfigDataRepository
107
        );
108
    }
109
}
110