diff --git a/src/Configuration/ApplicationConfigurationFactoryInterface.php b/src/Configuration/ApplicationConfigurationFactoryInterface.php old mode 100644 new mode 100755 diff --git a/src/Configuration/ApplicationConfigurationInterface.php b/src/Configuration/ApplicationConfigurationInterface.php old mode 100644 new mode 100755 index a85a80c..3005c1c --- a/src/Configuration/ApplicationConfigurationInterface.php +++ b/src/Configuration/ApplicationConfigurationInterface.php @@ -8,6 +8,7 @@ interface ApplicationConfigurationInterface * @param string $key * @param mixed|null $default * @param bool $nullable + * * @return mixed */ public function get(string $key, mixed $default = null, bool $nullable = true): mixed; diff --git a/src/Configuration/DefaultApplicationConfiguration.php b/src/Configuration/DefaultApplicationConfiguration.php old mode 100644 new mode 100755 index 536d1e6..baee906 --- a/src/Configuration/DefaultApplicationConfiguration.php +++ b/src/Configuration/DefaultApplicationConfiguration.php @@ -28,7 +28,7 @@ public function get(string $key, $default = null, bool $nullable = true): mixed $value = $this->getValue($key, $default); - if($nullable === false && !$value) { + if($nullable === false && !$value && !is_numeric($value)) { throw new InvalidConfigurationException(sprintf('Configuration key "%s" can not be NULL', $key)); } diff --git a/src/Configuration/DefaultApplicationConfigurationFactory.php b/src/Configuration/DefaultApplicationConfigurationFactory.php old mode 100644 new mode 100755 diff --git a/src/Configuration/Exception/InvalidConfigurationException.php b/src/Configuration/Exception/InvalidConfigurationException.php old mode 100644 new mode 100755 diff --git a/src/Configuration/PluginConfiguration.php b/src/Configuration/PluginConfiguration.php old mode 100644 new mode 100755 index faaac50..c30219d --- a/src/Configuration/PluginConfiguration.php +++ b/src/Configuration/PluginConfiguration.php @@ -7,17 +7,21 @@ class PluginConfiguration implements PluginConfigurationInterface /** * @param ApplicationConfigurationInterface $configuration */ - public function __construct(protected ApplicationConfigurationInterface $configuration) + public function __construct(protected readonly ApplicationConfigurationInterface $configuration) { } /** - * @param string $list + * @param string|array $list * @param string $separator * @return string[] */ - protected function explodeStringToArray(string $list, string $separator = ','): array + protected function explodeStringToArray(string|array $list, string $separator = ','): array { + if(is_array($list)) { + return $list; + } + if($separator === '') { return [$list]; } diff --git a/src/Configuration/PluginConfigurationInterface.php b/src/Configuration/PluginConfigurationInterface.php old mode 100644 new mode 100755 diff --git a/src/Configuration/PluginRoutingKeyConfiguration.php b/src/Configuration/PluginRoutingKeyConfiguration.php old mode 100644 new mode 100755 index c63e2f3..bd12a1f --- a/src/Configuration/PluginRoutingKeyConfiguration.php +++ b/src/Configuration/PluginRoutingKeyConfiguration.php @@ -10,7 +10,7 @@ class PluginRoutingKeyConfiguration extends PluginConfiguration */ public function __construct( ApplicationConfigurationInterface $configuration, - protected string $configRoutingKey + protected readonly string $configRoutingKey ) { parent::__construct($configuration); diff --git a/src/Configuration/Resolver/PluginConfigurationClassResolver.php b/src/Configuration/Resolver/PluginConfigurationClassResolver.php old mode 100644 new mode 100755 diff --git a/src/Configuration/Resolver/PluginConfigurationClassResolverInterface.php b/src/Configuration/Resolver/PluginConfigurationClassResolverInterface.php old mode 100644 new mode 100755 diff --git a/src/Configuration/Resolver/PluginNameResolver.php b/src/Configuration/Resolver/PluginNameResolver.php old mode 100644 new mode 100755 diff --git a/src/Configuration/Resolver/PluginNameShortResolver.php b/src/Configuration/Resolver/PluginNameShortResolver.php old mode 100644 new mode 100755 diff --git a/src/Container/ApplicationContainerFactoryInterface.php b/src/Container/ApplicationContainerFactoryInterface.php old mode 100644 new mode 100755 diff --git a/src/Container/Impl/ApplicationContainerFactory.php b/src/Container/Impl/ApplicationContainerFactory.php old mode 100644 new mode 100755 diff --git a/src/Kernel.php b/src/Kernel.php old mode 100644 new mode 100755 diff --git a/src/KernelBuilder.php b/src/KernelBuilder.php old mode 100644 new mode 100755 diff --git a/src/KernelInterface.php b/src/KernelInterface.php old mode 100644 new mode 100755 index e83f30c..5aee707 --- a/src/KernelInterface.php +++ b/src/KernelInterface.php @@ -31,7 +31,7 @@ public function terminate(): void; /** * @param string|null $interfaceInherited * - * @return iterable + * @return iterable */ public function plugins(string $interfaceInherited = null): iterable; } diff --git a/src/Plugin/AbstractPlugin.php b/src/Plugin/AbstractPlugin.php old mode 100644 new mode 100755 index 4a0cb7b..1c1e7bf --- a/src/Plugin/AbstractPlugin.php +++ b/src/Plugin/AbstractPlugin.php @@ -8,7 +8,7 @@ abstract class AbstractPlugin implements ApplicationPluginInterface { - public function __construct(protected PluginConfiguration $configuration) + public function __construct(protected readonly PluginConfiguration $configuration) { } diff --git a/src/Plugin/ApplicationPluginInterface.php b/src/Plugin/ApplicationPluginInterface.php old mode 100644 new mode 100755 diff --git a/src/Plugin/BootLoader/ProvideDependenciesBootLoader.php b/src/Plugin/BootLoader/ProvideDependenciesBootLoader.php deleted file mode 100644 index b63dc5e..0000000 --- a/src/Plugin/BootLoader/ProvideDependenciesBootLoader.php +++ /dev/null @@ -1,22 +0,0 @@ -provideDependencies($this->container); - } -} diff --git a/src/Plugin/PluginBootLoaderInterface.php b/src/Plugin/PluginBootLoaderInterface.php old mode 100644 new mode 100755