You are here

public function JSONItem::getConstraints in JSON Field 8

Gets a list of validation constraints.

Return value

array Array of constraints, each being an instance of \Symfony\Component\Validator\Constraint.

Overrides TypedData::getConstraints

File

src/Plugin/Field/FieldType/JSONItem.php, line 141

Class

JSONItem
Plugin implementation of the 'JSON' field type.

Namespace

Drupal\json_field\Plugin\Field\FieldType

Code

public function getConstraints() {
  $constraint_manager = \Drupal::typedDataManager()
    ->getValidationConstraintManager();
  $constraints = parent::getConstraints();
  $max_length = $this
    ->getMaxLength();
  $constraints[] = $constraint_manager
    ->create('ComplexData', [
    'value' => [
      'Length' => [
        'max' => $max_length,
        'maxMessage' => t('%name: the text may not be longer than @max characters.', [
          '%name' => $this
            ->getFieldDefinition()
            ->getLabel(),
          '@max' => $max_length,
        ]),
      ],
    ],
  ]);
  return $constraints;
}