vendor/ezsystems/ezplatform-kernel/eZ/Publish/Core/Repository/Values/ContentType/FieldDefinition.php line 36

Open in your IDE?
  1. <?php
  2. /**
  3.  * @copyright Copyright (C) Ibexa AS. All rights reserved.
  4.  * @license For full copyright and license information view LICENSE file distributed with this source code.
  5.  */
  6. declare(strict_types=1);
  7. namespace eZ\Publish\Core\Repository\Values\ContentType;
  8. use eZ\Publish\API\Repository\Values\ContentType\FieldDefinition as APIFieldDefinition;
  9. use eZ\Publish\Core\Repository\Values\MultiLanguageDescriptionTrait;
  10. use eZ\Publish\Core\Repository\Values\MultiLanguageNameTrait;
  11. use eZ\Publish\Core\Repository\Values\MultiLanguageTrait;
  12. /**
  13.  * This class represents a field definition.
  14.  *
  15.  * @property-read string[] $names calls getNames() or on access getName($language)
  16.  * @property-read string[] $descriptions calls getDescriptions() or on access getDescription($language)
  17.  * @property-read array $fieldSettings calls getFieldSettings()
  18.  * @property-read array $validatorConfiguration calls getValidatorConfiguration()
  19.  * @property-read mixed $id the id of the field definition
  20.  * @property-read string $identifier the identifier of the field definition
  21.  * @property-read string $fieldGroup the field group name
  22.  * @property-read int $position the position of the field definition in the content type
  23.  * @property-read string $fieldTypeIdentifier String identifier of the field type
  24.  * @property-read bool $isTranslatable indicates if fields of this definition are translatable
  25.  * @property-read bool $isRequired indicates if this field is required in the content object
  26.  * @property-read bool $isSearchable indicates if the field is searchable
  27.  * @property-read bool $isInfoCollector indicates if this field is used for information collection
  28.  * @property-read mixed $defaultValue the default value of the field
  29.  *
  30.  * @internal Meant for internal use by Repository, type hint against API object instead.
  31.  */
  32. class FieldDefinition extends APIFieldDefinition
  33. {
  34.     use MultiLanguageTrait;
  35.     use MultiLanguageNameTrait;
  36.     use MultiLanguageDescriptionTrait;
  37.     /**
  38.      * Holds collection of settings for the field definition supported by the field type.
  39.      *
  40.      * @var array
  41.      */
  42.     protected $fieldSettings = [];
  43.     /**
  44.      * Holds validator configuration of this field definition supported by the field type.
  45.      *
  46.      * @var array
  47.      */
  48.     protected $validatorConfiguration = [];
  49.     /**
  50.      * This method returns the validator configuration of this field definition supported by the field type.
  51.      *
  52.      * @return array
  53.      */
  54.     public function getValidatorConfiguration(): array
  55.     {
  56.         return $this->validatorConfiguration;
  57.     }
  58.     /**
  59.      * This method returns settings for the field definition supported by the field type.
  60.      *
  61.      * @return array
  62.      */
  63.     public function getFieldSettings(): array
  64.     {
  65.         return $this->fieldSettings;
  66.     }
  67. }