Code Duplication    Length = 9-13 lines in 5 locations

src/Endpoint/Product.php 2 locations

@@ 184-192 (lines=9) @@
181
     * @param int $siteId
182
     * @return array
183
     */
184
    public function getProductsByModificationDate(\DateTimeInterface $modificationDate, int $siteId) : array
185
    {
186
        Assert::that($siteId)->greaterThan(0, 'The $siteId has to be positive');
187
188
        return (array)$this->master->doRequest(
189
            'GET',
190
            sprintf('/admin/WEBAPI/Endpoints/v1_0/ProductService/{KEY}/ByModificationDate/%s/%d', $modificationDate->format('Y-m-d'), $siteId)
191
        );
192
    }
193
194
    /**
195
     * @see http://4221117.shop53.dandomain.dk/admin/webapi/endpoints/v1_0/ProductService/help/operations/FindProductsByProductNumbers
@@ 107-117 (lines=11) @@
104
     * @param array $context
105
     * @return array
106
     */
107
    public function getProductsInCategoryByMetadata(int $categoryId, array $context) : array
108
    {
109
        Assert::that($categoryId)->greaterThan(0, 'The $categoryId has to be positive');
110
        Assert::that($context)->notEmpty();
111
112
        return (array)$this->master->doRequest(
113
            'POST',
114
            sprintf('/admin/WEBAPI/Endpoints/v1_0/ProductService/{KEY}/Products/%d', $categoryId),
115
            $context
116
        );
117
    }
118
119
    /**
120
     * @see http://4221117.shop53.dandomain.dk/admin/webapi/endpoints/v1_0/ProductService/help/operations/GetCategory

src/Endpoint/ProductData.php 1 location

@@ 92-104 (lines=13) @@
89
     * @param \DateTimeInterface $dateEnd
90
     * @return int
91
     */
92
    public function countByModifiedInterval(\DateTimeInterface $dateStart, \DateTimeInterface $dateEnd) : int
93
    {
94
        Assert::that($dateStart)->lessThan($dateEnd, '$dateStart has to be before $dateEnd');
95
96
        return (int)$this->master->doRequest(
97
            'GET',
98
            sprintf(
99
                '/admin/WEBAPI/Endpoints/v1_0/ProductDataService/{KEY}/CountByModifiedInterval?start=%s&end=%s',
100
                $dateStart->format('Y-m-d\TH:i:s'),
101
                $dateEnd->format('Y-m-d\TH:i:s')
102
            )
103
        );
104
    }
105
106
    /**
107
     * @param array|\stdClass $product

src/Endpoint/Discount.php 1 location

@@ 372-383 (lines=12) @@
369
        );
370
    }
371
372
    protected function countDiscounts(int $siteId, string $type) : int
373
    {
374
        Assert::that($siteId)->greaterThan(0, '$siteId must be positive');
375
        Assert::that($type)->choice(self::getTypes());
376
377
        $type .= 'sCount';
378
379
        return (int)$this->master->doRequest(
380
            'GET',
381
            sprintf('/admin/WEBAPI/Endpoints/v1_0/DiscountService/{KEY}/%s/%d', $type, $siteId)
382
        );
383
    }
384
385
    protected static function getTypes() : array
386
    {

src/Endpoint/ProductTag.php 1 location

@@ 87-95 (lines=9) @@
84
     * @param int $id
85
     * @return boolean
86
     */
87
    public function deleteProductTag(int $id) : bool
88
    {
89
        Assert::that($id)->greaterThan(0, '$id has to be positive');
90
91
        return (bool)$this->master->doRequest(
92
            'DELETE',
93
            sprintf('/admin/WEBAPI/Endpoints/v1_0/ProductTagService/{KEY}/%d', $id)
94
        );
95
    }
96
97
    /**
98
     * @param string $productNumber