1
0
mirror of synced 2025-02-09 08:49:26 +03:00

Refactor to use class_map() instead

This commit is contained in:
Luís Cobucci 2017-01-16 23:22:52 +01:00
parent bb943afabe
commit 4f28aaa206
No known key found for this signature in database
GPG Key ID: 8042585A7DBC92E1

View File

@ -113,11 +113,12 @@ class DefaultQueryCache implements QueryCache
$cm = $this->em->getClassMetadata($entityName); $cm = $this->em->getClassMetadata($entityName);
$entityCacheKeys = []; $generateKeys = function (array $entry) use ($cm): EntityCacheKey {
foreach ($entry->result as $index => $concreteEntry) { return new EntityCacheKey($cm->rootEntityName, $entry['identifier']);
$entityCacheKeys[$index] = new EntityCacheKey($cm->rootEntityName, $concreteEntry['identifier']); };
}
$entries = $region->getMultiple(new CollectionCacheEntry($entityCacheKeys)); $cacheKeys = new CollectionCacheEntry(array_map($generateKeys, $entry->result));
$entries = $region->getMultiple($cacheKeys);
// @TODO - move to cache hydration component // @TODO - move to cache hydration component
foreach ($entry->result as $index => $entry) { foreach ($entry->result as $index => $entry) {
@ -127,14 +128,14 @@ class DefaultQueryCache implements QueryCache
if ($entityEntry === null) { if ($entityEntry === null) {
if ($this->cacheLogger !== null) { if ($this->cacheLogger !== null) {
$this->cacheLogger->entityCacheMiss($regionName, $entityCacheKeys[$index]); $this->cacheLogger->entityCacheMiss($regionName, $cacheKeys->identifiers[$index]);
} }
return null; return null;
} }
if ($this->cacheLogger !== null) { if ($this->cacheLogger !== null) {
$this->cacheLogger->entityCacheHit($regionName, $entityCacheKeys[$index]); $this->cacheLogger->entityCacheHit($regionName, $cacheKeys->identifiers[$index]);
} }
if ( ! $hasRelation) { if ( ! $hasRelation) {