4 * This file is part of the Symfony package.
6 * (c) Fabien Potencier <fabien@symfony.com>
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
12 namespace Symfony\Component\Validator\Mapping;
15 * Stores all metadata needed for validating the value of a class property.
17 * Most importantly, the metadata stores the constraints against which the
18 * property's value should be validated.
20 * Additionally, the metadata stores whether objects stored in the property
21 * should be validated against their class' metadata and whether traversable
22 * objects should be traversed or not.
24 * @author Bernhard Schussek <bschussek@gmail.com>
26 * @see MetadataInterface
27 * @see CascadingStrategy
28 * @see TraversalStrategy
30 interface PropertyMetadataInterface extends MetadataInterface
33 * Returns the name of the property.
35 * @return string The property name
37 public function getPropertyName();
40 * Extracts the value of the property from the given container.
42 * @param mixed $containingValue The container to extract the property value from
44 * @return mixed The value of the property
46 public function getPropertyValue($containingValue);