From 2bf1b3f429dda6b982f2425fecb375952b7057e0 Mon Sep 17 00:00:00 2001 From: Thomas Gelf Date: Fri, 18 Aug 2017 16:42:21 +0200 Subject: [PATCH] RepositoryByObjectHelper: throw a nice exception ...when no Db is given --- .../Repository/RepositoryByObjectHelper.php | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/library/Director/Repository/RepositoryByObjectHelper.php b/library/Director/Repository/RepositoryByObjectHelper.php index 15276b20..15500d2c 100644 --- a/library/Director/Repository/RepositoryByObjectHelper.php +++ b/library/Director/Repository/RepositoryByObjectHelper.php @@ -2,6 +2,7 @@ namespace Icinga\Module\Director\Repository; +use Icinga\Exception\ProgrammingError; use Icinga\Module\Director\Db; use Icinga\Module\Director\Objects\IcingaObject; @@ -37,7 +38,9 @@ trait RepositoryByObjectHelper /** * @param IcingaObject $object + * @param Db|null $connection * @return static + * @throws ProgrammingError */ public static function instanceByObject(IcingaObject $object, Db $connection = null) { @@ -46,12 +49,13 @@ trait RepositoryByObjectHelper } if (! $connection) { - var_dump($object->hasBeenLoadedFromDb()); exit; - echo '
';
-            debug_print_backtrace();
-            echo '
'; - throw new \Exception('SDFA'); + throw new ProgrammingError( + 'Cannot use repository for %s "%s" as it has no DB connection', + $object->getShortTableName(), + $object->getObjectName() + ); } + return static::instanceByType( $object->getShortTableName(), $connection