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