From 2305df32873b06188623c943d3034de76f3eba0d Mon Sep 17 00:00:00 2001
From: Lee Rowlands <lee.rowlands@previousnext.com.au>
Date: Fri, 3 Jan 2025 13:18:41 +1000
Subject: [PATCH] Issue #3461838 by marcgk, narendrar: Convert Constraint
 plugin discovery to attribute for MediaMappingsConstraint

---
 .../Constraint/MediaMappingsConstraint.php      | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/core/modules/media/src/Plugin/Validation/Constraint/MediaMappingsConstraint.php b/core/modules/media/src/Plugin/Validation/Constraint/MediaMappingsConstraint.php
index b99f4c709f77..17a2e6df4081 100644
--- a/core/modules/media/src/Plugin/Validation/Constraint/MediaMappingsConstraint.php
+++ b/core/modules/media/src/Plugin/Validation/Constraint/MediaMappingsConstraint.php
@@ -2,20 +2,21 @@
 
 namespace Drupal\media\Plugin\Validation\Constraint;
 
-use Symfony\Component\Validator\Constraint;
+use Drupal\Core\Validation\Attribute\Constraint;
+use Drupal\Core\StringTranslation\TranslatableMarkup;
+use Symfony\Component\Validator\Constraint as SymfonyConstraint;
 
 /**
  * Validates media mappings.
  *
  * @internal
- *
- * @Constraint(
- *   id = "MediaMappingsConstraint",
- *   label = @Translation("Media Mapping Constraint", context = "Validation"),
- *   type = {"string"}
- * )
  */
-class MediaMappingsConstraint extends Constraint {
+#[Constraint(
+  id: 'MediaMappingsConstraint',
+  label: new TranslatableMarkup('Media Mapping Constraint', [], ['context' => 'Validation']),
+  type: 'string'
+)]
+class MediaMappingsConstraint extends SymfonyConstraint {
 
   /**
    * The error message if source is used in media mapping.
-- 
GitLab