/** * Compare trigger value to $serverData[$servicename] * * @param Monitor\Model\Trigger $trigger * @param array $serverData * @param \Doctrine\ORM\EntityRepository $serviceRepository * @param \Monitor\Utils\PercentageHelper $percentageHelper * @param \Monitor\Contract\Notification\Trigger\Comparator\ComparatorInterface $comparator */ public function compare(Trigger $trigger, array $serverData, EntityRepository $serviceRepository, PercentageHelper $percentageHelper, ComparatorInterface $comparator) { if (!isset($serverData[$trigger->getServiceName()])) { return false; } if ($comparator->compare($trigger, $serverData[$trigger->getServiceName()])) { return true; } return false; }
/** * Compare trigger value to service percentage * * @param Monitor\Model\Trigger $trigger * @param array $serverData * @param \Doctrine\ORM\EntityRepository $serviceRepository * @param \Monitor\Utils\PercentageHelper $percentageHelper * @param \Monitor\Contract\Notification\Trigger\Comparator\ComparatorInterface $comparator */ public function compare(Trigger $trigger, array $serverData, EntityRepository $serviceRepository, PercentageHelper $percentageHelper, ComparatorInterface $comparator) { $service = $serviceRepository->findOneBy(['name' => $trigger->getServiceName()]); if (!$service) { //$log->error('cant find service') return false; } $serviceCompare = $percentageHelper->getServicePercentage($serverData, $service); if ($comparator->compare($trigger, $serviceCompare)) { return true; } return false; }