/** * Checks whether all process and memory usage is within the constraints of a rule. * * * @param Rule $rule * @param float $processor * @param float $memory * * @return bool */ protected function withinConstraints(Rule $rule, $processor, $memory) { $minimumProcessor = 0; if ($rule->getMinimumProcessorUsage()) { $minimumProcessor = $rule->getMinimumProcessorUsage(); } $maximumProcessor = 100; if ($rule->getMinimumProcessorUsage()) { $maximumProcessor = $rule->getMaximumProcessorUsage(); } $minimumMemory = 0; if ($rule->getMinimumMemoryUsage()) { $minimumMemory = $rule->getMinimumMemoryUsage(); } $maximumMemory = 100; if ($rule->getMinimumMemoryUsage()) { $maximumMemory = $rule->getMaximumMemoryUsage(); } return $processor >= $minimumProcessor && $processor <= $maximumProcessor && $memory >= $minimumMemory && $memory <= $maximumMemory; }
/** * Checks whether the current profile is within the memory constraints of a rule. * * @param Rule $rule * @param Profile $profile * * @return bool */ private function withinMemoryConstraints(Rule $rule, Profile $profile) { if ($rule->getMinimumMemoryUsage() !== null && $rule->getMaximumMemoryUsage() !== null) { return $profile->getMemoryLoad() >= $rule->getMinimumMemoryUsage() && $profile->getMemoryLoad() <= $rule->getMaximumMemoryUsage(); } return false; }