/**
  * Compare quality factors of preferences.
  *
  * @param PreferenceInterface $lValue
  * @param PreferenceInterface $rValue
  *
  * @return int -1, 0, 1 (see usort() callback for meaning)
  */
 private function compareQualityFactor(PreferenceInterface $lValue, PreferenceInterface $rValue)
 {
     if ($rValue->getQualityFactor() < $lValue->getQualityFactor()) {
         return -1;
     } elseif ($rValue->getQualityFactor() > $lValue->getQualityFactor()) {
         return 1;
     } else {
         return 0;
     }
 }
Example #2
0
 /**
  * Returns the product of the server & client quality factors.
  *
  * @return float
  */
 public function getQualityFactor()
 {
     return $this->clientPref->getQualityFactor() * $this->serverPref->getQualityFactor();
 }