FakeMetadataFactory.php in Plug 7
File
lib/Symfony/validator/Symfony/Component/Validator/Tests/Fixtures/FakeMetadataFactory.phpView source
<?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\Tests\Fixtures;
use Symfony\Component\Validator\Exception\NoSuchMetadataException;
use Symfony\Component\Validator\MetadataFactoryInterface;
use Symfony\Component\Validator\MetadataInterface;
class FakeMetadataFactory implements MetadataFactoryInterface {
protected $metadatas = array();
public function getMetadataFor($class) {
$hash = null;
if (is_object($class)) {
$hash = spl_object_hash($class);
$class = get_class($class);
}
if (!is_string($class)) {
throw new NoSuchMetadataException(sprintf('No metadata for type %s', gettype($class)));
}
if (!isset($this->metadatas[$class])) {
if (isset($this->metadatas[$hash])) {
return $this->metadatas[$hash];
}
throw new NoSuchMetadataException(sprintf('No metadata for "%s"', $class));
}
return $this->metadatas[$class];
}
public function hasMetadataFor($class) {
$hash = null;
if (is_object($class)) {
$hash = spl_object_hash($class);
$class = get_class($class);
}
if (!is_string($class)) {
return false;
}
return isset($this->metadatas[$class]) || isset($this->metadatas[$hash]);
}
public function addMetadata($metadata) {
$this->metadatas[$metadata
->getClassName()] = $metadata;
}
public function addMetadataForValue($value, MetadataInterface $metadata) {
$key = is_object($value) ? spl_object_hash($value) : $value;
$this->metadatas[$key] = $metadata;
}
}
Classes
Name | Description |
---|---|
FakeMetadataFactory |