From bf79e9cee7e328bef280851df1109498705093fa Mon Sep 17 00:00:00 2001 From: Romano Schoonheim Date: Tue, 15 Dec 2020 21:46:46 +0100 Subject: [PATCH] Introduced configurations and application object (test code) --- config/application.php | 5 ++ core/Application/Application.php | 10 +++- core/Configuration/Configurations.php | 54 ++++++++++++++++++++ core/Configuration/Factories/FileFactory.php | 8 +++ core/Configuration/FileSystem.php | 33 ++++++++++++ core/Configuration/Objects/File.php | 10 ++++ public/index.php | 19 ++++--- 7 files changed, 131 insertions(+), 8 deletions(-) create mode 100644 config/application.php create mode 100644 core/Configuration/Configurations.php create mode 100644 core/Configuration/Factories/FileFactory.php create mode 100644 core/Configuration/FileSystem.php create mode 100644 core/Configuration/Objects/File.php diff --git a/config/application.php b/config/application.php new file mode 100644 index 0000000..e4695b1 --- /dev/null +++ b/config/application.php @@ -0,0 +1,5 @@ + [] +]; diff --git a/core/Application/Application.php b/core/Application/Application.php index d140a8d..0dc6700 100644 --- a/core/Application/Application.php +++ b/core/Application/Application.php @@ -2,15 +2,21 @@ namespace Core\Application; +use Core\Configuration\Configurations; use Illuminate\Container\Container; class Application { - private Container $container; + /** @var Container $container */ + private $container; - public function __construct(Container $container) + /** @var Configurations */ + private $configurations; + + public function __construct(Container $container, Configurations $configurations) { $this->container = $container; + $this->configurations = $configurations; } public function run() diff --git a/core/Configuration/Configurations.php b/core/Configuration/Configurations.php new file mode 100644 index 0000000..7b4a093 --- /dev/null +++ b/core/Configuration/Configurations.php @@ -0,0 +1,54 @@ +getConfigurationFiles() as $configurationFile) { + print_r($configurationFile); + } + } + + + + +// private const IGNORED_FILES = [ +// '.', +// '..', +// 'config.php', +// 'config_sample.php' +// ]; +// +// +// private $configurations = []; +// +// public function __construct() +// { +// foreach (scandir(self::CONFIGURATION_DIRECTORY) as $item) { +// if (in_array($item, self::IGNORED_FILES)) { +// continue; +// } +// +// $filePath = self::CONFIGURATION_DIRECTORY . $item; +// +// +// +// +// die(); +// } +// } +// +// public function config(string $path): array +// { +// return $this->configurations; +// } +} diff --git a/core/Configuration/Factories/FileFactory.php b/core/Configuration/Factories/FileFactory.php new file mode 100644 index 0000000..1b126c4 --- /dev/null +++ b/core/Configuration/Factories/FileFactory.php @@ -0,0 +1,8 @@ +singleton( + Configurations::class, + Configurations::class +); /** * Create application & run */ $application = new Application( - $container + $container, + $container->make(Configurations::class) ); $application->run(); + + +/** + * Bootstrap v1.0 + */ +require_once __DIR__ . '/../app/Bootstrap.php';