31 lines
788 B
PHP
31 lines
788 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Exception;
|
|
|
|
use RuntimeException;
|
|
|
|
final class PontBasculeException extends RuntimeException
|
|
{
|
|
public static function transportFailure(string $details): self
|
|
{
|
|
return new self('Erreur lors de la communication avec le pont bascule: '.$details, 500);
|
|
}
|
|
|
|
public static function invalidPayload(): self
|
|
{
|
|
return new self('Réponse invalide du pont bascule.', 500);
|
|
}
|
|
|
|
public static function missingPayloadField(string $field): self
|
|
{
|
|
return new self('Réponse incomplète du pont bascule: champ "'.$field.'" manquant.', 500);
|
|
}
|
|
|
|
public static function unreadableValues(): self
|
|
{
|
|
return new self('Impossible de lire les valeurs de pesée du pont bascule.', 500);
|
|
}
|
|
}
|