From 44a8d3278e485a0d8e7596504db7d8439acbf217 Mon Sep 17 00:00:00 2001 From: Chuck Hagenbuch Date: Thu, 29 Apr 2010 10:59:05 -0400 Subject: [PATCH] More declarative implementation --- .../Horde/Injector/Binder/ImplementationWithSetters.php | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/framework/Injector/lib/Horde/Injector/Binder/ImplementationWithSetters.php b/framework/Injector/lib/Horde/Injector/Binder/ImplementationWithSetters.php index 2053bd905..5457877b7 100644 --- a/framework/Injector/lib/Horde/Injector/Binder/ImplementationWithSetters.php +++ b/framework/Injector/lib/Horde/Injector/Binder/ImplementationWithSetters.php @@ -17,15 +17,21 @@ class Horde_Injector_Binder_ImplementationWithSetters extends Horde_Injector_Bin $reflectionClass = new ReflectionClass($this->_implementation); $this->_validateImplementation($reflectionClass); $instance = $this->_getInstance($injector, $reflectionClass); - $setters = $this->_findSetters($reflectionClass); - foreach ($setters as $setter) { - $this->bindSetter($setter); - } + $this->_bindAnnotatedSetters($reflectionClass); $this->_callSetters($injector, $instance); return $instance; } /** + */ + private function _bindAnnotatedSetters(ReflectionClass $reflectionClass) + { + foreach ($this->_findSetters($reflectionClass) as $setter) { + $this->bindSetter($setter); + } + } + + /** * Find all public methods in $reflectionClass that are annotated with * @inject. * -- 2.11.0