eZ\Publish\Core\REST\Server\Output\ValueObjectVisitor\Section::visit PHP Method

visit() public method

Visit struct returned by controllers.
public visit ( Visitor $visitor, Generator $generator, eZ\Publish\API\Repository\Values\Content\Section $data )
$visitor eZ\Publish\Core\REST\Common\Output\Visitor
$generator eZ\Publish\Core\REST\Common\Output\Generator
$data eZ\Publish\API\Repository\Values\Content\Section
    public function visit(Visitor $visitor, Generator $generator, $data)
    {
        $generator->startObjectElement('Section');
        $visitor->setHeader('Content-Type', $generator->getMediaType('Section'));
        $visitor->setHeader('Accept-Patch', $generator->getMediaType('SectionInput'));
        $generator->startAttribute('href', $this->router->generate('ezpublish_rest_loadSection', array('sectionId' => $data->id)));
        $generator->endAttribute('href');
        $generator->startValueElement('sectionId', $data->id);
        $generator->endValueElement('sectionId');
        $generator->startValueElement('identifier', $data->identifier);
        $generator->endValueElement('identifier');
        $generator->startValueElement('name', $data->name);
        $generator->endValueElement('name');
        $generator->endObjectElement('Section');
    }

Usage Example

 /**
  * Visit struct returned by controllers.
  *
  * @param \eZ\Publish\Core\REST\Common\Output\Visitor $visitor
  * @param \eZ\Publish\Core\REST\Common\Output\Generator $generator
  * @param \eZ\Publish\Core\REST\Server\Values\CreatedSection $data
  */
 public function visit(Visitor $visitor, Generator $generator, $data)
 {
     parent::visit($visitor, $generator, $data->section);
     $visitor->setHeader('Location', $this->router->generate('ezpublish_rest_loadSection', array('sectionId' => $data->section->id)));
     $visitor->setStatus(201);
 }
Section