GraphAware\Reco4PHP\Executor\RecommendationExecutor::doDiscovery PHP Метод

doDiscovery() приватный Метод

private doDiscovery ( GraphAware\Common\Type\Node $input, GraphAware\Reco4PHP\Engine\RecommendationEngine $engine, GraphAware\Reco4PHP\Context\Context $context )
$input GraphAware\Common\Type\Node
$engine GraphAware\Reco4PHP\Engine\RecommendationEngine
$context GraphAware\Reco4PHP\Context\Context
    private function doDiscovery(Node $input, RecommendationEngine $engine, Context $context)
    {
        $recommendations = new Recommendations($context);
        $context->getStatistics()->startDiscovery();
        $result = $this->discoveryExecutor->processDiscovery($input, $engine->getDiscoveryEngines(), $engine->getBlacklistBuilders(), $context);
        foreach ($engine->getDiscoveryEngines() as $discoveryEngine) {
            $recommendations->merge($discoveryEngine->produceRecommendations($input, $result, $context));
        }
        $context->getStatistics()->stopDiscovery();
        $blacklist = $this->buildBlacklistedNodes($result, $engine);
        $this->removeIrrelevant($input, $engine, $recommendations, $blacklist);
        return $recommendations;
    }