Passed
Push — develop ( f53d0b...3a55e6 )
by Jens
09:08
created

OrderRequestBuilder::deleteByOrderNumber()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
dl 0
loc 3
ccs 0
cts 2
cp 0
rs 10
c 0
b 0
f 0
cc 1
eloc 1
nc 1
nop 1
crap 2
1
<?php
2
/**
3
 * @author @jenschude <[email protected]>
4
 */
5
6
namespace Commercetools\Core\Builder\Request;
7
8
use Commercetools\Core\Model\Cart\Cart;
9
use Commercetools\Core\Model\Order\ImportOrder;
10
use Commercetools\Core\Model\Order\Order;
11
use Commercetools\Core\Request\Carts\CartReplicateRequest;
12
use Commercetools\Core\Request\Orders\OrderByIdGetRequest;
13
use Commercetools\Core\Request\Orders\OrderByOrderNumberGetRequest;
14
use Commercetools\Core\Request\Orders\OrderCreateFromCartRequest;
15
use Commercetools\Core\Request\Orders\OrderDeleteByOrderNumberRequest;
16
use Commercetools\Core\Request\Orders\OrderDeleteRequest;
17
use Commercetools\Core\Request\Orders\OrderImportRequest;
18
use Commercetools\Core\Request\Orders\OrderQueryRequest;
19
use Commercetools\Core\Request\Orders\OrderUpdateByOrderNumberRequest;
20
use Commercetools\Core\Request\Orders\OrderUpdateRequest;
21
22
class OrderRequestBuilder
23
{
24
    /**
25
     * @return OrderQueryRequest
26
     */
27 1
    public function query()
28
    {
29 1
        return OrderQueryRequest::of();
30
    }
31
32
    /**
33
     * @param Order $order
34
     * @return OrderUpdateRequest
35
     */
36 1
    public function update(Order $order)
37
    {
38 1
        return OrderUpdateRequest::ofIdAndVersion($order->getId(), $order->getVersion());
39
    }
40
41
    /**
42
     * @param Order $order
43
     * @return OrderUpdateByOrderNumberRequest
44
     */
45
    public function updateByOrderNumber(Order $order)
46
    {
47
        return OrderUpdateByOrderNumberRequest::ofOrderNumberAndVersion($order->getOrderNumber(), $order->getVersion());
48
    }
49
50
    /**
51
     * @param Cart $cart
52
     * @return OrderCreateFromCartRequest
53
     */
54
    public function createFromCart(Cart $cart)
55
    {
56
        return OrderCreateFromCartRequest::ofCartIdAndVersion($cart->getId(), $cart->getVersion());
57
    }
58
59
    /**
60
     * @param Order $order
61
     * @return OrderDeleteRequest
62
     */
63 1
    public function delete(Order $order)
64
    {
65 1
        return OrderDeleteRequest::ofIdAndVersion($order->getId(), $order->getVersion());
66
    }
67
68
    /**
69
     * @param Order $order
70
     * @return OrderDeleteByOrderNumberRequest
71
     */
72
    public function deleteByOrderNumber(Order $order)
73
    {
74
        return OrderDeleteByOrderNumberRequest::ofOrderNumberAndVersion($order->getOrderNumber(), $order->getVersion());
75
    }
76
77
    /**
78
     * @param string $id
79
     * @return OrderByIdGetRequest
80
     */
81 1
    public function getById($id)
82
    {
83 1
        return OrderByIdGetRequest::ofId($id);
84
    }
85
86
    /**
87
     * @param $orderNumber
88
     * @return OrderByOrderNumberGetRequest
89
     */
90
    public function getByOrderNumber($orderNumber)
91
    {
92
        return OrderByOrderNumberGetRequest::ofOrderNumber($orderNumber);
93
    }
94
95
    /**
96
     * @param ImportOrder $importOrder
97
     * @return OrderImportRequest
98
     */
99
    public function import(ImportOrder $importOrder)
100
    {
101
        return OrderImportRequest::ofImportOrder($importOrder);
102
    }
103
104
    /**
105
     * @param $orderId
106
     * @return CartReplicateRequest
107
     */
108
    public function replicate($orderId)
109
    {
110
        return CartReplicateRequest::ofOrderId($orderId);
111
    }
112
}
113