AbstractAction::put()   A
last analyzed

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 3
cp 0
rs 10
c 0
b 0
f 0
cc 1
eloc 1
nc 1
nop 1
crap 2
1
<?php
2
3
namespace Phrest\API;
4
5
abstract class AbstractAction implements
6
    \Interop\Http\ServerMiddleware\MiddlewareInterface,
7
    \Psr\Log\LoggerAwareInterface
8
{
9
    use RESTActionTrait;
10
11
    protected function onRESTRequest(\Psr\Http\Message\ServerRequestInterface $request, string $method): \Psr\Http\Message\ResponseInterface
12
    {
13
        $response = call_user_func_array([$this, $method], [$request]);
14
15
        // if there is no response -> create a response (=204 No Content)
16
        return $response ?? new \Zend\Diactoros\Response\EmptyResponse();
17
    }
18
19
    public function get(\Psr\Http\Message\ServerRequestInterface $request): ?\Psr\Http\Message\ResponseInterface
20
    {
21
        $this->throwMethodNotAllowed('GET');
22
    }
23
24
    public function post(\Psr\Http\Message\ServerRequestInterface $request): ?\Psr\Http\Message\ResponseInterface
25
    {
26
        $this->throwMethodNotAllowed('POST');
27
    }
28
29
    public function put(\Psr\Http\Message\ServerRequestInterface $request): ?\Psr\Http\Message\ResponseInterface
30
    {
31
        $this->throwMethodNotAllowed('PUT');
32
    }
33
34
    public function patch(\Psr\Http\Message\ServerRequestInterface $request): ?\Psr\Http\Message\ResponseInterface
35
    {
36
        $this->throwMethodNotAllowed('PATCH');
37
    }
38
39
    public function delete(\Psr\Http\Message\ServerRequestInterface $request): ?\Psr\Http\Message\ResponseInterface
40
    {
41
        $this->throwMethodNotAllowed('DELETE');
42
    }
43
}
44