diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-13 11:45:00 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-13 11:45:00 +0000 |
commit | 260bd89dc5a1b971e9c545ea0822d7b294538cfc (patch) | |
tree | 750aa3e132390af611951c3910067e375f5458f4 /library/Icingadb/Command | |
parent | Adding debian version 1.1.1-1. (diff) | |
download | icingadb-web-260bd89dc5a1b971e9c545ea0822d7b294538cfc.tar.xz icingadb-web-260bd89dc5a1b971e9c545ea0822d7b294538cfc.zip |
Merging upstream version 1.1.2.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'library/Icingadb/Command')
-rw-r--r-- | library/Icingadb/Command/Object/ObjectsCommand.php | 13 | ||||
-rw-r--r-- | library/Icingadb/Command/Transport/CommandTransport.php | 4 |
2 files changed, 13 insertions, 4 deletions
diff --git a/library/Icingadb/Command/Object/ObjectsCommand.php b/library/Icingadb/Command/Object/ObjectsCommand.php index 3de6c83..f1a50d7 100644 --- a/library/Icingadb/Command/Object/ObjectsCommand.php +++ b/library/Icingadb/Command/Object/ObjectsCommand.php @@ -5,8 +5,11 @@ namespace Icinga\Module\Icingadb\Command\Object; use ArrayIterator; +use Generator; use Icinga\Module\Icingadb\Command\IcingaCommand; +use InvalidArgumentException; use ipl\Orm\Model; +use LogicException; use Traversable; /** @@ -24,12 +27,18 @@ abstract class ObjectsCommand extends IcingaCommand /** * Set the involved objects * - * @param Traversable<Model> $objects + * @param Traversable<Model> $objects Except generators * * @return $this + * + * @throws InvalidArgumentException If a generator is passed */ public function setObjects(Traversable $objects): self { + if ($objects instanceof Generator) { + throw new InvalidArgumentException('Generators are not supported'); + } + $this->objects = $objects; return $this; @@ -57,7 +66,7 @@ abstract class ObjectsCommand extends IcingaCommand public function getObjects(): Traversable { if ($this->objects === null) { - throw new \LogicException( + throw new LogicException( 'You are accessing an unset property. Please make sure to set it beforehand.' ); } diff --git a/library/Icingadb/Command/Transport/CommandTransport.php b/library/Icingadb/Command/Transport/CommandTransport.php index ea125bc..952cb14 100644 --- a/library/Icingadb/Command/Transport/CommandTransport.php +++ b/library/Icingadb/Command/Transport/CommandTransport.php @@ -50,7 +50,7 @@ class CommandTransport implements CommandTransportInterface /** * Create a transport from config * - * @param ConfigObject $config + * @param ConfigObject<string> $config * * @return ApiCommandTransport * @@ -59,7 +59,7 @@ class CommandTransport implements CommandTransportInterface public static function createTransport(ConfigObject $config): ApiCommandTransport { $config = clone $config; - switch (strtolower($config->transport)) { + switch (strtolower($config->transport ?? '')) { case ApiCommandTransport::TRANSPORT: $transport = new ApiCommandTransport(); break; |