|
@@ -63,6 +63,11 @@ class DefaultPolicy implements PolicyInterface
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
+ public function getPriority(Pool $pool, PackageInterface $package)
|
|
|
+ {
|
|
|
+ return $pool->getPriority($package->getRepository());
|
|
|
+ }
|
|
|
+
|
|
|
public function selectPreferedPackages(Pool $pool, RepositoryInterface $installed, array $literals)
|
|
|
{
|
|
|
$packages = $this->groupLiteralsByNamePreferInstalled($installed, $literals);
|
|
@@ -119,7 +124,7 @@ class DefaultPolicy implements PolicyInterface
|
|
|
return 1;
|
|
|
}
|
|
|
|
|
|
- return ($pool->getPriority($a->getRepository()) > $pool->getPriority($b->getRepository())) ? -1 : 1;
|
|
|
+ return ($this->getPriority($pool, $a) > $this->getPriority($pool, $b)) ? -1 : 1;
|
|
|
}
|
|
|
|
|
|
protected function pruneToBestVersion($literals)
|
|
@@ -169,18 +174,18 @@ class DefaultPolicy implements PolicyInterface
|
|
|
$priority = null;
|
|
|
|
|
|
foreach ($literals as $literal) {
|
|
|
- $repo = $literal->getPackage()->getRepository();
|
|
|
+ $package = $literal->getPackage();
|
|
|
|
|
|
- if ($repo === $installed) {
|
|
|
+ if ($package->getRepository() === $installed) {
|
|
|
$selected[] = $literal;
|
|
|
continue;
|
|
|
}
|
|
|
|
|
|
if (null === $priority) {
|
|
|
- $priority = $pool->getPriority($repo);
|
|
|
+ $priority = $this->getPriority($pool, $package);
|
|
|
}
|
|
|
|
|
|
- if ($pool->getPriority($repo) != $priority) {
|
|
|
+ if ($this->getPriority($pool, $package) != $priority) {
|
|
|
break;
|
|
|
}
|
|
|
|