eZ\Publish\Core\REST\Client\Output\ValueObjectVisitor\FieldDefinitionCreateStruct::visit PHP Method

visit() public method

Visit struct returned by controllers.
public visit ( Visitor $visitor, Generator $generator, eZ\Publish\API\Repository\Values\ContentType\FieldDefinitionCreateStruct $fieldDefinitionCreateStruct )
$visitor eZ\Publish\Core\REST\Common\Output\Visitor
$generator eZ\Publish\Core\REST\Common\Output\Generator
$fieldDefinitionCreateStruct eZ\Publish\API\Repository\Values\ContentType\FieldDefinitionCreateStruct
    public function visit(Visitor $visitor, Generator $generator, $fieldDefinitionCreateStruct)
    {
        $generator->startObjectElement('FieldDefinition');
        $visitor->setHeader('Content-Type', $generator->getMediaType('FieldDefinitionCreateStruct'));
        $generator->startValueElement('identifier', $fieldDefinitionCreateStruct->identifier);
        $generator->endValueElement('identifier');
        $generator->startValueElement('fieldType', $fieldDefinitionCreateStruct->fieldTypeIdentifier);
        $generator->endValueElement('fieldType');
        $generator->startValueElement('fieldGroup', $fieldDefinitionCreateStruct->fieldGroup);
        $generator->endValueElement('fieldGroup');
        $generator->startValueElement('position', $fieldDefinitionCreateStruct->position);
        $generator->endValueElement('position');
        $generator->startValueElement('isTranslatable', $fieldDefinitionCreateStruct->isTranslatable ? 'true' : 'false');
        $generator->endValueElement('isTranslatable');
        $generator->startValueElement('isRequired', $fieldDefinitionCreateStruct->isRequired ? 'true' : 'false');
        $generator->endValueElement('isRequired');
        $generator->startValueElement('isInfoCollector', $fieldDefinitionCreateStruct->isInfoCollector ? 'true' : 'false');
        $generator->endValueElement('isInfoCollector');
        $generator->startValueElement('isSearchable', $fieldDefinitionCreateStruct->isSearchable ? 'true' : 'false');
        $generator->endValueElement('isSearchable');
        $this->fieldTypeSerializer->serializeFieldDefaultValue($generator, $fieldDefinitionCreateStruct->fieldTypeIdentifier, $fieldDefinitionCreateStruct->defaultValue);
        $this->fieldTypeSerializer->serializeFieldSettings($generator, $fieldDefinitionCreateStruct->fieldTypeIdentifier, $fieldDefinitionCreateStruct->fieldSettings);
        $this->fieldTypeSerializer->serializeValidatorConfiguration($generator, $fieldDefinitionCreateStruct->fieldTypeIdentifier, $fieldDefinitionCreateStruct->validatorConfiguration);
        if (!empty($fieldDefinitionCreateStruct->names)) {
            $generator->startHashElement('names');
            $generator->startList('value');
            foreach ($fieldDefinitionCreateStruct->names as $languageCode => $name) {
                $generator->startValueElement('value', $name, array('languageCode' => $languageCode));
                $generator->endValueElement('value');
            }
            $generator->endList('value');
            $generator->endHashElement('names');
        }
        if (!empty($fieldDefinitionCreateStruct->descriptions)) {
            $generator->startHashElement('descriptions');
            $generator->startList('value');
            foreach ($fieldDefinitionCreateStruct->descriptions as $languageCode => $description) {
                $generator->startValueElement('value', $description, array('languageCode' => $languageCode));
                $generator->endValueElement('value');
            }
            $generator->endList('value');
            $generator->endHashElement('descriptions');
        }
        $generator->endObjectElement('FieldDefinition');
    }
FieldDefinitionCreateStruct