Skip to content
Snippets Groups Projects
Verified Commit 4da7b73e authored by Bartek Jaskulski's avatar Bartek Jaskulski
Browse files

refactor: simplify loading bindings from config value

parent a3c95609
No related branches found
No related tags found
2 merge requests!3improve into wp-hook and some additional unfinished things,!21.x
<?php
declare( strict_types=1 );
namespace WPDesk\Init\Binding\Loader;
use WPDesk\Init\Configuration\ReadableConfig;
use WPDesk\Init\Loader\PhpFileLoader;
use WPDesk\Init\Util\Path;
class ConfigurationBindingLoader extends DirectoryBasedLoader {
public function __construct(
ReadableConfig $config,
string $plugin_path,
PhpFileLoader $loader,
DefinitionFactory $def_factory
) {
parent::__construct(
( new Path( $config->get( 'hook_resources_path' ) ) )->absolute( $plugin_path ),
$loader,
$def_factory
);
}
}
...@@ -8,7 +8,7 @@ use Psr\Container\ContainerInterface; ...@@ -8,7 +8,7 @@ use Psr\Container\ContainerInterface;
use WPDesk\Init\Binding\DefinitionFactory; use WPDesk\Init\Binding\DefinitionFactory;
use WPDesk\Init\Binding\Loader\ArrayBindingLoader; use WPDesk\Init\Binding\Loader\ArrayBindingLoader;
use WPDesk\Init\Binding\Loader\BindingDefinitions; use WPDesk\Init\Binding\Loader\BindingDefinitions;
use WPDesk\Init\Binding\Loader\ConfigurationBindingLoader; use WPDesk\Init\Binding\Loader\DirectoryBasedLoader;
use WPDesk\Init\Configuration\Configuration; use WPDesk\Init\Configuration\Configuration;
use WPDesk\Init\Configuration\ReadableConfig; use WPDesk\Init\Configuration\ReadableConfig;
use WPDesk\Init\DependencyInjection\ContainerBuilder; use WPDesk\Init\DependencyInjection\ContainerBuilder;
...@@ -21,11 +21,8 @@ class ConfigExtension implements Extension { ...@@ -21,11 +21,8 @@ class ConfigExtension implements Extension {
public function bindings( ContainerInterface $c ): BindingDefinitions { public function bindings( ContainerInterface $c ): BindingDefinitions {
$config = $c->get( Configuration::class ); $config = $c->get( Configuration::class );
if ( $config->has( 'hook_resources_path' ) ) { if ( $config->has( 'hook_resources_path' ) ) {
return new ConfigurationBindingLoader( return new DirectoryBasedLoader(
$c->get( Configuration::class ), ( new Path( $config->get( 'hook_resources_path' ) ) )->absolute( $c->get( Plugin::class )->get_path() )
$c->get( Plugin::class )->get_path(),
new PhpFileLoader(),
new DefinitionFactory()
); );
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment