configFile = $configFile; $this->processor = new Processor(); } public function add($config) { $this->configs[] = $config; } public function getConfigTreeBuilder() { $treeBuilder = new TreeBuilder('configs'); $rootNode = $treeBuilder->getRootNode(); $ref = $rootNode->children(); foreach ($this->configs as $config) { $ref = $ref->append($config->get()); } $ref->end(); return $treeBuilder; } public function readContent() { if (!is_dir($this->configFile)) { mkdir($this->configFile); } $contents = sprintf('%s/storage.yml', $this->configFile); return file_get_contents($contents); } public function loadYaml() { $contents = $this->readContent(); $parseContents = Yaml::parse($contents); return $this->processor->processConfiguration($this, [$parseContents]); } }