return new AppNotFoundException( Response::HTTP_NOT_FOUND,
self::NOT_FOUND,
'App with identifier "{{ identifier }}" not found',
['identifier' =>
$identifier] );
} public static function alreadyInstalled(string
$appName): self
{ return new AppAlreadyInstalledException( Response::HTTP_CONFLICT,
self::ALREADY_INSTALLED,
'App "{{ appName }}" is already installed',
['appName' =>
$appName] );
} public static function registrationFailed(string
$appName, string
$reason, ?\Throwable
$previous = null
): self
{ return new AppRegistrationException( Response::HTTP_INTERNAL_SERVER_ERROR,