Version 1
[yaffs-website] / vendor / symfony / validator / Mapping / ClassMetadataInterface.php
diff --git a/vendor/symfony/validator/Mapping/ClassMetadataInterface.php b/vendor/symfony/validator/Mapping/ClassMetadataInterface.php
new file mode 100644 (file)
index 0000000..d8c3d84
--- /dev/null
@@ -0,0 +1,79 @@
+<?php
+
+/*
+ * This file is part of the Symfony package.
+ *
+ * (c) Fabien Potencier <fabien@symfony.com>
+ *
+ * For the full copyright and license information, please view the LICENSE
+ * file that was distributed with this source code.
+ */
+
+namespace Symfony\Component\Validator\Mapping;
+
+use Symfony\Component\Validator\ClassBasedInterface;
+use Symfony\Component\Validator\PropertyMetadataContainerInterface as LegacyPropertyMetadataContainerInterface;
+
+/**
+ * Stores all metadata needed for validating objects of specific class.
+ *
+ * Most importantly, the metadata stores the constraints against which an object
+ * and its properties should be validated.
+ *
+ * Additionally, the metadata stores whether the "Default" group is overridden
+ * by a group sequence for that class and whether instances of that class
+ * should be traversed or not.
+ *
+ * @author Bernhard Schussek <bschussek@gmail.com>
+ *
+ * @see MetadataInterface
+ * @see \Symfony\Component\Validator\Constraints\GroupSequence
+ * @see \Symfony\Component\Validator\GroupSequenceProviderInterface
+ * @see TraversalStrategy
+ */
+interface ClassMetadataInterface extends MetadataInterface, LegacyPropertyMetadataContainerInterface, ClassBasedInterface
+{
+    /**
+     * Returns the names of all constrained properties.
+     *
+     * @return string[] A list of property names
+     */
+    public function getConstrainedProperties();
+
+    /**
+     * Returns whether the "Default" group is overridden by a group sequence.
+     *
+     * If it is, you can access the group sequence with {@link getGroupSequence()}.
+     *
+     * @return bool Returns true if the "Default" group is overridden
+     *
+     * @see \Symfony\Component\Validator\Constraints\GroupSequence
+     */
+    public function hasGroupSequence();
+
+    /**
+     * Returns the group sequence that overrides the "Default" group for this
+     * class.
+     *
+     * @return \Symfony\Component\Validator\Constraints\GroupSequence|null The group sequence or null
+     *
+     * @see \Symfony\Component\Validator\Constraints\GroupSequence
+     */
+    public function getGroupSequence();
+
+    /**
+     * Returns whether the "Default" group is overridden by a dynamic group
+     * sequence obtained by the validated objects.
+     *
+     * If this method returns true, the class must implement
+     * {@link \Symfony\Component\Validator\GroupSequenceProviderInterface}.
+     * This interface will be used to obtain the group sequence when an object
+     * of this class is validated.
+     *
+     * @return bool Returns true if the "Default" group is overridden by
+     *              a dynamic group sequence
+     *
+     * @see \Symfony\Component\Validator\GroupSequenceProviderInterface
+     */
+    public function isGroupSequenceProvider();
+}