Passed
Push — master ( da0795...78880b )
by Jens
14:45 queued 18s
created

CartDiscountRequestBuilder   A

Complexity

Total Complexity 9

Size/Duplication

Total Lines 97
Duplicated Lines 0 %

Test Coverage

Coverage 57.69%

Importance

Changes 0
Metric Value
wmc 9
eloc 18
dl 0
loc 97
ccs 15
cts 26
cp 0.5769
rs 10
c 0
b 0
f 0

9 Methods

Rating   Name   Duplication   Size   Complexity  
A query() 0 4 1
A deleteByKey() 0 4 1
A of() 0 3 1
A delete() 0 4 1
A update() 0 4 1
A getById() 0 4 1
A getByKey() 0 4 1
A create() 0 4 1
A updateByKey() 0 4 1
1
<?php
2
// phpcs:disable Generic.Files.LineLength
3
namespace Commercetools\Core\Builder\Request;
4
5
use Commercetools\Core\Request\CartDiscounts\CartDiscountByIdGetRequest;
6
use Commercetools\Core\Request\CartDiscounts\CartDiscountByKeyGetRequest;
7
use Commercetools\Core\Request\CartDiscounts\CartDiscountCreateRequest;
8
use Commercetools\Core\Model\CartDiscount\CartDiscountDraft;
9
use Commercetools\Core\Request\CartDiscounts\CartDiscountDeleteByKeyRequest;
10
use Commercetools\Core\Model\CartDiscount\CartDiscount;
11
use Commercetools\Core\Request\CartDiscounts\CartDiscountDeleteRequest;
12
use Commercetools\Core\Request\CartDiscounts\CartDiscountQueryRequest;
13
use Commercetools\Core\Request\CartDiscounts\CartDiscountUpdateByKeyRequest;
14
use Commercetools\Core\Request\CartDiscounts\CartDiscountUpdateRequest;
15
16
class CartDiscountRequestBuilder
17
{
18
19
    /**
20
     * @link https://docs.commercetools.com/http-api-projects-cartDiscounts.html#get-cartdiscount-by-id
21
     * @param string $id
22
     * @return CartDiscountByIdGetRequest
23
     */
24 1
    public function getById($id)
25
    {
26 1
        $request = CartDiscountByIdGetRequest::ofId($id);
27 1
        return $request;
28
    }
29
30
    /**
31
     *
32
     * @param string $key
33
     * @return CartDiscountByKeyGetRequest
34
     */
35
    public function getByKey($key)
36
    {
37
        $request = CartDiscountByKeyGetRequest::ofKey($key);
38
        return $request;
39
    }
40
41
    /**
42
     * @link https://docs.commercetools.com/http-api-projects-cartDiscounts.html#create-a-cartdiscount
43
     * @param CartDiscountDraft $cartDiscountDraft
44
     * @return CartDiscountCreateRequest
45
     */
46 1
    public function create(CartDiscountDraft $cartDiscountDraft)
47
    {
48 1
        $request = CartDiscountCreateRequest::ofDraft($cartDiscountDraft);
49 1
        return $request;
50
    }
51
52
    /**
53
     *
54
     * @param CartDiscount $cartDiscount
55
     * @return CartDiscountDeleteByKeyRequest
56
     */
57
    public function deleteByKey(CartDiscount $cartDiscount)
58
    {
59
        $request = CartDiscountDeleteByKeyRequest::ofKeyAndVersion($cartDiscount->getKey(), $cartDiscount->getVersion());
60
        return $request;
61
    }
62
63
    /**
64
     * @link https://docs.commercetools.com/http-api-projects-cartDiscounts.html#delete-cartdiscount
65
     * @param CartDiscount $cartDiscount
66
     * @return CartDiscountDeleteRequest
67
     */
68 1
    public function delete(CartDiscount $cartDiscount)
69
    {
70 1
        $request = CartDiscountDeleteRequest::ofIdAndVersion($cartDiscount->getId(), $cartDiscount->getVersion());
71 1
        return $request;
72
    }
73
74
    /**
75
     * @link https://docs.commercetools.com/http-api-projects-cartDiscounts.html#query-cartdiscounts
76
     *
77
     * @return CartDiscountQueryRequest
78
     */
79 1
    public function query()
80
    {
81 1
        $request = CartDiscountQueryRequest::of();
82 1
        return $request;
83
    }
84
85
    /**
86
     *
87
     * @param CartDiscount $cartDiscount
88
     * @return CartDiscountUpdateByKeyRequest
89
     */
90
    public function updateByKey(CartDiscount $cartDiscount)
91
    {
92
        $request = CartDiscountUpdateByKeyRequest::ofKeyAndVersion($cartDiscount->getKey(), $cartDiscount->getVersion());
93
        return $request;
94
    }
95
96
    /**
97
     * @link https://docs.commercetools.com/http-api-projects-cartDiscounts.html#update-cartdiscount
98
     * @param CartDiscount $cartDiscount
99
     * @return CartDiscountUpdateRequest
100
     */
101 1
    public function update(CartDiscount $cartDiscount)
102
    {
103 1
        $request = CartDiscountUpdateRequest::ofIdAndVersion($cartDiscount->getId(), $cartDiscount->getVersion());
104 1
        return $request;
105
    }
106
107
    /**
108
     * @return CartDiscountRequestBuilder
109
     */
110
    public function of()
111
    {
112
        return new self();
113
    }
114
}
115