BlogReferenceBuilder::buildReference()   A
last analyzed

Complexity

Conditions 2
Paths 2

Size

Total Lines 16
Code Lines 12

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 16
rs 9.4285
c 0
b 0
f 0
cc 2
eloc 12
nc 2
nop 2
1
<?php
2
3
namespace Victoire\Bundle\BlogBundle\Builder;
4
5
use Doctrine\ORM\EntityManager;
6
use Victoire\Bundle\CoreBundle\Entity\View;
7
use Victoire\Bundle\ViewReferenceBundle\Builder\BaseReferenceBuilder;
8
use Victoire\Bundle\ViewReferenceBundle\Helper\ViewReferenceHelper;
9
use Victoire\Bundle\ViewReferenceBundle\ViewReference\ViewReference;
10
11
class BlogReferenceBuilder extends BaseReferenceBuilder
0 ignored issues
show
introduced by
Missing class doc comment
Loading history...
12
{
13
    /**
14
     * {@inheritdoc}
15
     */
16
    public function buildReference(View $view, EntityManager $em)
17
    {
18
        $referenceId = ViewReferenceHelper::generateViewReferenceId($view);
19
        $viewReference = new ViewReference();
20
        $viewReference->setId($referenceId);
21
        $viewReference->setLocale($view->getCurrentLocale());
22
        $viewReference->setName($view->getName());
23
        $viewReference->setViewId($view->getId());
24
        $viewReference->setSlug($view->getSlug());
25
        $viewReference->setViewNamespace($em->getClassMetadata(get_class($view))->name);
26
        if ($parent = $view->getParent()) {
27
            $viewReference->setParent(ViewReferenceHelper::generateViewReferenceId($parent));
28
        }
29
30
        return $viewReference;
31
    }
32
}
33