[ticket/11415] Send the extension base the finder rather than the manager

PHPBB3-11415
This commit is contained in:
Nathan Guse 2013-05-10 14:01:31 -05:00
parent 27b2bbb8ff
commit f91f8666fd
2 changed files with 9 additions and 10 deletions

View file

@ -27,8 +27,8 @@ class phpbb_extension_base implements phpbb_extension_interface
/** @var ContainerInterface */ /** @var ContainerInterface */
protected $container; protected $container;
/** @var phpbb_extension_manager */ /** @var phpbb_extension_finder */
protected $extension_manager; protected $finder;
/** @var phpbb_db_migrator */ /** @var phpbb_db_migrator */
protected $migrator; protected $migrator;
@ -43,14 +43,14 @@ class phpbb_extension_base implements phpbb_extension_interface
* Constructor * Constructor
* *
* @param ContainerInterface $container Container object * @param ContainerInterface $container Container object
* @param phpbb_extension_manager $extension_manager * @param phpbb_extension_finder $extension_finder
* @param string $extension_name Name of this extension (from ext.manager) * @param string $extension_name Name of this extension (from ext.manager)
* @param string $extension_path Relative path to this extension * @param string $extension_path Relative path to this extension
*/ */
public function __construct(ContainerInterface $container, phpbb_extension_manager $extension_manager, phpbb_db_migrator $migrator, $extension_name, $extension_path) public function __construct(ContainerInterface $container, phpbb_extension_finder $extension_finder, phpbb_db_migrator $migrator, $extension_name, $extension_path)
{ {
$this->container = $container; $this->container = $container;
$this->extension_manager = $extension_manager; $this->extension_finder = $extension_finder;
$this->migrator = $migrator; $this->migrator = $migrator;
$this->extension_name = $extension_name; $this->extension_name = $extension_name;
@ -125,11 +125,10 @@ class phpbb_extension_base implements phpbb_extension_interface
} }
// Only have the finder search in this extension path directory // Only have the finder search in this extension path directory
$finder = $this->extension_manager->get_finder(); $migrations = $this->extension_finder
$migrations = $finder
->extension_directory('/migrations') ->extension_directory('/migrations')
->find_from_extension($this->extension_name, $this->extension_path); ->find_from_extension($this->extension_name, $this->extension_path);
$migrations = $finder->get_classes_from_files($migrations); $migrations = $this->extension_finder->get_classes_from_files($migrations);
return $migrations; return $migrations;
} }

View file

@ -137,11 +137,11 @@ class phpbb_extension_manager
if (class_exists($extension_class_name)) if (class_exists($extension_class_name))
{ {
return new $extension_class_name($this->container, $this, $migrator, $name, $this->get_extension_path($name, true)); return new $extension_class_name($this->container, $this->get_finder(), $migrator, $name, $this->get_extension_path($name, true));
} }
else else
{ {
return new phpbb_extension_base($this->container, $this, $migrator, $name, $this->get_extension_path($name, true)); return new phpbb_extension_base($this->container, $this->get_finder(), $migrator, $name, $this->get_extension_path($name, true));
} }
} }