Nextras\Orm\Mapper\Dbal\RelationshipMapperManyHasOne::execute PHP 메소드

execute() 보호된 메소드

protected execute ( DbalCollection $collection, Nextras\Orm\Entity\IEntity $parent )
$collection DbalCollection
$parent Nextras\Orm\Entity\IEntity
    protected function execute(DbalCollection $collection, IEntity $parent)
    {
        $builder = $collection->getQueryBuilder();
        $preloadContainer = $parent->getPreloadContainer();
        $values = $preloadContainer ? $preloadContainer->getPreloadValues($this->metadata->name) : [$parent->getRawValue($this->metadata->name)];
        $cacheKey = $this->calculateCacheKey($builder, $values);
        $data =& $this->cacheEntityContainers[$cacheKey];
        if ($data) {
            return $data;
        }
        $data = $this->fetch(clone $builder, stripos($cacheKey, 'JOIN') !== false, $values);
        return $data;
    }