From 125f9d14ebc8b973e7ecf4a69c6e926b0d45f54b Mon Sep 17 00:00:00 2001 From: WalterWoshid Date: Sun, 5 Nov 2023 23:16:27 +0100 Subject: [PATCH 1/2] Added additional dependency injection params for PHP-AOP --- src/CodeTransformerKernel.php | 2 +- src/Core/Container/TransformerManager.php | 12 ++++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/CodeTransformerKernel.php b/src/CodeTransformerKernel.php index 6481c7c..f364416 100644 --- a/src/CodeTransformerKernel.php +++ b/src/CodeTransformerKernel.php @@ -219,7 +219,7 @@ protected function registerServices(): void $this->options->register(); $this->transformerManager->registerCustomDependencyInjectionHandler( - $this->dependencyInjectionHandler() + $this->dependencyInjectionHandler(), ); $this->transformerManager->register(); diff --git a/src/Core/Container/TransformerManager.php b/src/Core/Container/TransformerManager.php index f6e48a6..2341a89 100644 --- a/src/Core/Container/TransformerManager.php +++ b/src/Core/Container/TransformerManager.php @@ -35,7 +35,7 @@ class TransformerManager implements ServiceInterface private array $transformerContainers = []; /** - * @var ?Closure(class-string): Transformer + * @var null|Closure(class-string): Transformer */ private ?Closure $dependencyInjectionHandler = null; @@ -103,7 +103,10 @@ private function loadTransformer(mixed $transformerClassName): void // Instantiate the transformer if ($this->dependencyInjectionHandler) { - $transformerInstance = ($this->dependencyInjectionHandler)($transformerClassName); + $transformerInstance = ($this->dependencyInjectionHandler)( + $transformerClassName, + ...($this->getAdditionalDependencyInjectionParams()), + ); } else { try { $transformerInstance = DI::make($transformerClassName); @@ -130,6 +133,11 @@ private function loadTransformer(mixed $transformerClassName): void $this->transformerContainers[$filePath] = $transformerContainer; } + protected function getAdditionalDependencyInjectionParams(): array + { + return []; + } + // endregion /** From bdfc83711d7ccd8146acc734c50ba7e188e34d39 Mon Sep 17 00:00:00 2001 From: WalterWoshid Date: Sun, 5 Nov 2023 23:16:52 +0100 Subject: [PATCH 2/2] Bumped Composer version --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index e54767b..4626cc0 100644 --- a/composer.json +++ b/composer.json @@ -1,7 +1,7 @@ { "name": "okapi/code-transformer", "description": "PHP Code Transformer is a PHP library that allows you to modify and transform the source code of a loaded PHP class.", - "version": "1.3.4", + "version": "1.3.5", "type": "library", "homepage": "https://github.com/okapi-web/php-code-transformer", "license": "MIT",