Exemplo n.º 1
0
 /**
  * @param  int   $level
  * @param  array $decisionQueue
  * @param  bool  $disableRules
  * @param  Rule  $rule
  * @return int
  */
 private function selectAndInstall($level, array $decisionQueue, $disableRules, Rule $rule)
 {
     // choose best package to install from decisionQueue
     $literals = $this->policy->selectPreferredPackages($this->pool, $this->installedMap, $decisionQueue, $rule->getRequiredPackage());
     $selectedLiteral = array_shift($literals);
     // if there are multiple candidates, then branch
     if (count($literals)) {
         $this->branches[] = array($literals, $level);
     }
     return $this->setPropagateLearn($level, $selectedLiteral, $disableRules, $rule);
 }
Exemplo n.º 2
0
 private function selectAndInstall($level, array $decisionQueue, $disableRules, Rule $rule)
 {
     $literals = $this->policy->selectPreferedPackages($this->pool, $this->installedMap, $decisionQueue, $rule->getRequiredPackage());
     $selectedLiteral = array_shift($literals);
     if (count($literals)) {
         $this->branches[] = array($literals, $level);
     }
     return $this->setPropagateLearn($level, $selectedLiteral, $disableRules, $rule);
 }