Passed
Branch request_builder (fdca7a)
by Jens
08:39
created

OrderRequestBuilder::import()   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\Orders\OrderByIdGetRequest;
12
use Commercetools\Core\Request\Orders\OrderByOrderNumberGetRequest;
13
use Commercetools\Core\Request\Orders\OrderCreateFromCartRequest;
14
use Commercetools\Core\Request\Orders\OrderDeleteByOrderNumberRequest;
15
use Commercetools\Core\Request\Orders\OrderDeleteRequest;
16
use Commercetools\Core\Request\Orders\OrderImportRequest;
17
use Commercetools\Core\Request\Orders\OrderQueryRequest;
18
use Commercetools\Core\Request\Orders\OrderUpdateByOrderNumberRequest;
19
use Commercetools\Core\Request\Orders\OrderUpdateRequest;
20
21
class OrderRequestBuilder
22
{
23
    /**
24
     * @return OrderQueryRequest
25
     */
26 1
    public function query()
27
    {
28 1
        return OrderQueryRequest::of();
29
    }
30
31
    /**
32
     * @param Order $order
33
     * @return OrderUpdateRequest
34
     */
35 1
    public function update(Order $order)
36
    {
37 1
        return OrderUpdateRequest::ofIdAndVersion($order->getId(), $order->getVersion());
38
    }
39
40
    /**
41
     * @param Order $order
42
     * @return OrderUpdateByOrderNumberRequest
43
     */
44
    public function updateByOrderNumber(Order $order)
45
    {
46
        return OrderUpdateByOrderNumberRequest::ofOrderNumberAndVersion($order->getOrderNumber(), $order->getVersion());
47
    }
48
49
    /**
50
     * @param Cart $cart
51
     * @return OrderCreateFromCartRequest
52
     */
53
    public function createFromCart(Cart $cart)
54
    {
55
        return OrderCreateFromCartRequest::ofCartIdAndVersion($cart->getId(), $cart->getVersion());
56
    }
57
58
    /**
59
     * @param Order $order
60
     * @return OrderDeleteRequest
61
     */
62 1
    public function delete(Order $order)
63
    {
64 1
        return OrderDeleteRequest::ofIdAndVersion($order->getId(), $order->getVersion());
65
    }
66
67
    /**
68
     * @param Order $order
69
     * @return OrderDeleteByOrderNumberRequest
70
     */
71
    public function deleteByOrderNumber(Order $order)
72
    {
73
        return OrderDeleteByOrderNumberRequest::ofOrderNumberAndVersion($order->getOrderNumber(), $order->getVersion());
74
    }
75
76
    /**
77
     * @param string $id
78
     * @return OrderByIdGetRequest
79
     */
80 1
    public function getById($id)
81
    {
82 1
        return OrderByIdGetRequest::ofId($id);
83
    }
84
85
    /**
86
     * @param $orderNumber
87
     * @return OrderByOrderNumberGetRequest
88
     */
89
    public function getByOrderNumber($orderNumber)
90
    {
91
        return OrderByOrderNumberGetRequest::ofOrderNumber($orderNumber);
92
    }
93
94
    /**
95
     * @param ImportOrder $importOrder
96
     * @return OrderImportRequest
97
     */
98
    public function import(ImportOrder $importOrder)
99
    {
100
        return OrderImportRequest::ofImportOrder($importOrder);
101
    }
102
}
103