* @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0) */ declare(strict_types=1); namespace PrestaShop\CircuitBreaker\Exception; use PrestaShop\CircuitBreaker\Util\ErrorFormatter; final class InvalidPlaceException extends CircuitBreakerException { /** * @param mixed $failures the failures * @param mixed $timeout the timeout * @param mixed $threshold the threshold */ public static function invalidSettings($failures, $timeout, $threshold): self { $exceptionMessage = 'Invalid settings for Place' . PHP_EOL . ErrorFormatter::format('failures', $failures, 'isPositiveInteger', 'a positive integer') . ErrorFormatter::format('timeout', $timeout, 'isPositiveValue', 'a float') . ErrorFormatter::format('threshold', $threshold, 'isPositiveInteger', 'a positive integer') ; return new self($exceptionMessage); } }