Completed
Push — master ( 553bc5...721b68 )
by
unknown
49:35 queued 26:20
created

visitObjectStateGroupAttributes()   B

Complexity

Conditions 1
Paths 1

Size

Total Lines 31
Code Lines 21

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 21
nc 1
nop 3
dl 0
loc 31
rs 8.8571
c 0
b 0
f 0
1
<?php
2
3
/**
4
 * File containing the ObjectStateGroup ValueObjectVisitor class.
5
 *
6
 * @copyright Copyright (C) eZ Systems AS. All rights reserved.
7
 * @license For full copyright and license information view LICENSE file distributed with this source code.
8
 */
9
namespace eZ\Publish\Core\REST\Server\Output\ValueObjectVisitor;
10
11
use eZ\Publish\Core\REST\Common\Output\ValueObjectVisitor;
12
use eZ\Publish\Core\REST\Common\Output\Generator;
13
use eZ\Publish\Core\REST\Common\Output\Visitor;
14
use eZ\Publish\API\Repository\Values\ObjectState\ObjectStateGroup as ObjectStateGroupValue;
15
16
/**
17
 * ObjectStateGroup value object visitor.
18
 */
19
class ObjectStateGroup extends ValueObjectVisitor
20
{
21
    /**
22
     * Visit struct returned by controllers.
23
     *
24
     * @param \eZ\Publish\Core\REST\Common\Output\Visitor $visitor
25
     * @param \eZ\Publish\Core\REST\Common\Output\Generator $generator
26
     * @param \eZ\Publish\API\Repository\Values\ObjectState\ObjectStateGroup $data
27
     */
28
    public function visit(Visitor $visitor, Generator $generator, $data)
29
    {
30
        $generator->startObjectElement('ObjectStateGroup');
31
        $visitor->setHeader('Content-Type', $generator->getMediaType('ObjectStateGroup'));
32
        $visitor->setHeader('Accept-Patch', $generator->getMediaType('ObjectStateGroupUpdate'));
33
        $this->visitObjectStateGroupAttributes($visitor, $generator, $data);
34
        $generator->endObjectElement('ObjectStateGroup');
35
    }
36
37
    protected function visitObjectStateGroupAttributes(Visitor $visitor, Generator $generator, ObjectStateGroupValue $data)
0 ignored issues
show
Unused Code introduced by
The parameter $visitor is not used and could be removed.

This check looks from parameters that have been defined for a function or method, but which are not used in the method body.

Loading history...
38
    {
39
        $generator->startAttribute(
40
            'href',
41
            $this->router->generate('ezpublish_rest_loadObjectStateGroup', array('objectStateGroupId' => $data->id))
42
        );
43
        $generator->endAttribute('href');
44
45
        $generator->startValueElement('id', $data->id);
46
        $generator->endValueElement('id');
47
48
        $generator->startValueElement('identifier', $data->identifier);
49
        $generator->endValueElement('identifier');
50
51
        $generator->startValueElement('defaultLanguageCode', $data->defaultLanguageCode);
52
        $generator->endValueElement('defaultLanguageCode');
53
54
        $generator->startValueElement('languageCodes', implode(',', $data->languageCodes));
55
        $generator->endValueElement('languageCodes');
56
57
        $generator->startObjectElement('ObjectStates', 'ObjectStateList');
58
        $generator->startAttribute(
59
            'href',
60
            $this->router->generate('ezpublish_rest_loadObjectStates', array('objectStateGroupId' => $data->id))
61
        );
62
        $generator->endAttribute('href');
63
        $generator->endObjectElement('ObjectStates');
64
65
        $this->visitNamesList($generator, $data->getNames());
66
        $this->visitDescriptionsList($generator, $data->getDescriptions());
67
    }
68
}
69