Avoid cache requests on subdef already in cache.

This commit is contained in:
Benoît Burnichon
2016-02-26 13:07:55 +01:00
parent 3300d7e06e
commit 6e1be6099f

View File

@@ -565,14 +565,14 @@ class record_adapter implements RecordInterface, cache_cacheableInterface
{
$name = strtolower($name);
if (!in_array($name, $this->get_available_subdefs())) {
throw new Exception_Media_SubdefNotFound(sprintf("subdef `%s` not found", $name));
}
if (isset($this->subdefs[$name])) {
return $this->subdefs[$name];
}
if (!in_array($name, $this->get_available_subdefs())) {
throw new Exception_Media_SubdefNotFound(sprintf("subdef `%s` not found", $name));
}
if (!$this->subdefs) {
$this->subdefs = [];
}
@@ -1583,7 +1583,7 @@ class record_adapter implements RecordInterface, cache_cacheableInterface
}
/**
* @return set_selection
* @return set_selection|record_adapter[]
* @throws Exception
* @throws \Doctrine\DBAL\DBALException
* @deprecated use {@link self::getChildren} instead.
@@ -1593,6 +1593,11 @@ class record_adapter implements RecordInterface, cache_cacheableInterface
return $this->getChildren();
}
/**
* @return set_selection|record_adapter[]
* @throws Exception
* @throws \Doctrine\DBAL\DBALException
*/
public function getChildren()
{
if (!$this->isStory()) {