Completed
Push — master ( 8af693...a60473 )
by Enrico
03:36
created

GetResourceController   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 18
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 5

Test Coverage

Coverage 100%

Importance

Changes 0
Metric Value
wmc 3
lcom 0
cbo 5
dl 0
loc 18
ccs 8
cts 8
cp 1
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
A __invoke() 0 15 3
1
<?php
2
3
namespace Resourceful\Controller;
4
5
use Silex\Application;
6
use Symfony\Component\HttpFoundation\Request;
7
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
8
use Symfony\Component\HttpKernel\Exception\ServiceUnavailableHttpException;
9
10
class GetResourceController extends AbstractResourceController
11
{
12 3
    public function __invoke(Application $app, Request $request)
13
    {
14 3
		$store = $this->getStore($app);
15
		
16 3
        if (!$store->contains($request->getRequestUri())) {
17 1
            throw new NotFoundHttpException("Not Found");
18
        }
19
20 2
        $resource = $store->fetch($request->getRequestUri());
21 2
        if ($resource === false) {
22 1
            throw new ServiceUnavailableHttpException(null, "Failed to retrieve resource");
23
        }
24
		
25 1
        return $app->json($resource);
26
    }
27
}
28