eZ\Publish\Core\REST\Client\Output\ValueObjectVisitor\RestContentCreateStruct::visit PHP Метод

visit() публичный Метод

public visit ( Visitor $visitor, Generator $generator, RestContentCreateStruct $restContentCreateStruct )
$visitor eZ\Publish\Core\REST\Common\Output\Visitor
$generator eZ\Publish\Core\REST\Common\Output\Generator
$restContentCreateStruct eZ\Publish\Core\REST\Server\Values\RestContentCreateStruct
    public function visit(Visitor $visitor, Generator $generator, $restContentCreateStruct)
    {
        $contentCreateStruct = $restContentCreateStruct->contentCreateStruct;
        $generator->startObjectElement('ContentCreate');
        $visitor->setHeader('Content-Type', $generator->getMediaType('TypeCreate'));
        $generator->startValueElement('mainLanguageCode', $contentCreateStruct->mainLanguageCode);
        $generator->endValueElement('mainLanguageCode');
        $generator->startValueElement('alwaysAvailable', $contentCreateStruct->alwaysAvailable ? 'true' : 'false');
        $generator->endValueElement('alwaysAvailable');
        $generator->startValueElement('remoteId', (int) $contentCreateStruct->remoteId);
        $generator->endValueElement('remoteId');
        if ($contentCreateStruct->modificationDate !== null) {
            $generator->startValueElement('modificationDate', $contentCreateStruct->modificationDate->format('c'));
            $generator->endValueElement('modificationDate');
        }
        if ($contentCreateStruct->ownerId !== null) {
            $generator->startObjectElement('User');
            $generator->startAttribute('href', $contentCreateStruct->ownerId);
            $generator->endAttribute('href');
            $generator->endObjectElement('User');
        }
        $generator->startObjectElement('ContentType');
        $generator->startAttribute('href', $this->router->generate('ezpublish_rest_loadContentType', array('contentTypeId' => $contentCreateStruct->contentType->id)));
        $generator->endAttribute('href');
        $generator->endObjectElement('ContentType');
        if (!empty($contentCreateStruct->fields)) {
            $generator->startHashElement('fields');
            $generator->startList('field');
            foreach ($contentCreateStruct->fields as $field) {
                $this->visitField($generator, $contentCreateStruct->contentType, $field);
            }
            $generator->endList('field');
            $generator->endHashElement('fields');
        }
        $visitor->visitValueObject($restContentCreateStruct->locationCreateStruct);
        $generator->endObjectElement('ContentCreate');
    }
RestContentCreateStruct