BaseController::deleteBulk()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 1
dl 0
loc 3
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 1
1
<?php
2
3
namespace SoliDry\Extension;
4
5
use Illuminate\Http\Request;
6
use Illuminate\Http\Response;
7
use Illuminate\Routing\Route;
8
use SoliDry\Exceptions\HeadersException;
9
use SoliDry\Helpers\Request as RequestHelper;
10
use SoliDry\Types\ErrorsInterface;
11
12
class BaseController extends ApiController
13
{
14
15
    /**
16
     * BaseController constructor.
17
     *
18
     * @param Route $route
19
     * @throws HeadersException
20
     * @throws \Illuminate\Contracts\Container\BindingResolutionException
21
     * @throws \ReflectionException
22
     */
23
    public function __construct(Route $route)
24
    {
25
        parent::__construct($route);
26
        if (\in_array($route->getActionMethod(), self::AVAILABLE_BULKS, true) && RequestHelper::isExt(request(), self::EXT_BULK) === false) {
27
            throw new HeadersException(ErrorsInterface::JSON_API_ERRORS[ErrorsInterface::HTTP_CODE_BULK_EXT_ERROR], ErrorsInterface::HTTP_CODE_BULK_EXT_ERROR);
28
        }
29
    }
30
31
    /**
32
     * Creates bulk of items in transaction mode
33
     *
34
     * @param Request $request
35
     * @return Response
36
     * @throws \LogicException
37
     * @throws \InvalidArgumentException
38
     * @throws \SoliDry\Exceptions\AttributesException
39
     */
40
    public function createBulk(Request $request) : Response
41
    {
42
        return $this->saveBulk($request);
43
    }
44
45
    /**
46
     * Update bulk of items in transaction mode
47
     *
48
     * @param Request $request
49
     * @return Response
50
     * @throws \InvalidArgumentException
51
     * @throws \LogicException
52
     * @throws \SoliDry\Exceptions\AttributesException
53
     */
54
    public function updateBulk(Request $request) : Response
55
    {
56
        return $this->mutateBulk($request);
57
    }
58
59
    /**
60
     * Delete bulk of items in transaction mode
61
     *
62
     * @param Request $request
63
     * @return Response
64
     * @throws \LogicException
65
     */
66
    public function deleteBulk(Request $request) : Response
67
    {
68
        return $this->removeBulk($request);
69
    }
70
}