public function visit(Visitor $visitor, Generator $generator, $data)
{
$generator->startObjectElement('ContentTypeGroupList');
$visitor->setHeader('Content-Type', $generator->getMediaType('ContentTypeGroupList'));
//@todo Needs refactoring, disabling certain headers should not be done this way
$visitor->setHeader('Accept-Patch', false);
$generator->startAttribute('href', $this->router->generate('ezpublish_rest_loadContentTypeGroupList'));
$generator->endAttribute('href');
$generator->startList('ContentTypeGroup');
foreach ($data->contentTypeGroups as $contentTypeGroup) {
$visitor->visitValueObject($contentTypeGroup);
}
$generator->endList('ContentTypeGroup');
$generator->endObjectElement('ContentTypeGroupList');
}