Completed
Push — master ( 9feb36...7cf6be )
by Iakov
03:45
created

ApiContextFactory::createSerializationContext()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
cc 1
eloc 3
nc 1
nop 0
dl 0
loc 5
ccs 0
cts 5
cp 0
crap 2
rs 9.4285
c 0
b 0
f 0
1
<?php
2
3
4
namespace Kami\ApiCoreBundle\Bridge\JmsSerializer\ContextFactory;
5
6
7
use JMS\Serializer\ContextFactory\SerializationContextFactoryInterface;
8
use JMS\Serializer\SerializationContext;
9
use Kami\ApiCoreBundle\Bridge\JmsSerializer\Exclusion\ApiExclusionStrategy;
10
use Kami\ApiCoreBundle\Security\AccessManager;
11
12
class ApiContextFactory implements SerializationContextFactoryInterface
13
{
14
    /**
15
     * @var AccessManager
16
     */
17
    protected  $accessManager;
18
19
    public function __construct(AccessManager $accessManager)
20
    {
21
        $this->accessManager = $accessManager;
22
    }
23
24
    public function createSerializationContext()
25
    {
26
        return SerializationContext::create()
27
            ->addExclusionStrategy(new ApiExclusionStrategy($this->accessManager))
28
            ->enableMaxDepthChecks()
29
            ;
30
    }
31
32
}