#6284 #6217 removing hacks around the ClassMetadata
details - invalid fix that was actually fixing the symptom
This commit is contained in:
parent
07b397f341
commit
caa008b61d
@ -29,7 +29,6 @@ use ReflectionClass;
|
||||
use Doctrine\Common\Persistence\Mapping\ClassMetadata;
|
||||
use Doctrine\Common\ClassLoader;
|
||||
use Doctrine\ORM\Cache\CacheException;
|
||||
use Doctrine\ORM\Cache\AssociationCacheEntry;
|
||||
|
||||
/**
|
||||
* A <tt>ClassMetadata</tt> instance holds all the object-relational mapping metadata
|
||||
@ -715,14 +714,11 @@ class ClassMetadataInfo implements ClassMetadata
|
||||
*/
|
||||
public function getIdentifierValues($entity)
|
||||
{
|
||||
if ($entity instanceof AssociationCacheEntry) {
|
||||
throw new \InvalidArgumentException('WTF DUDE: ' . $entity->class . ' - ' . \serialize($entity->identifier));
|
||||
}
|
||||
if ($this->isIdentifierComposite) {
|
||||
$id = [];
|
||||
|
||||
foreach ($this->identifier as $idField) {
|
||||
$value = $this->getIndentifierValue($entity, $idField);
|
||||
$value = $this->reflFields[$idField]->getValue($entity);
|
||||
|
||||
if (null !== $value) {
|
||||
$id[$idField] = $value;
|
||||
@ -733,7 +729,7 @@ class ClassMetadataInfo implements ClassMetadata
|
||||
}
|
||||
|
||||
$id = $this->identifier[0];
|
||||
$value = $this->getIndentifierValue($entity, $id);
|
||||
$value = $this->reflFields[$id]->getValue($entity);
|
||||
|
||||
if (null === $value) {
|
||||
return [];
|
||||
@ -742,15 +738,6 @@ class ClassMetadataInfo implements ClassMetadata
|
||||
return [$id => $value];
|
||||
}
|
||||
|
||||
private function getIndentifierValue($entity, $id)
|
||||
{
|
||||
if ($entity instanceof AssociationCacheEntry) {
|
||||
return $entity->identifier[$id];
|
||||
}
|
||||
|
||||
return $this->reflFields[$id]->getValue($entity);
|
||||
}
|
||||
|
||||
/**
|
||||
* Populates the entity identifier of an entity.
|
||||
*
|
||||
|
Loading…
x
Reference in New Issue
Block a user