Ejemplo n.º 1
0
 /**
  * Get appropriate parser
  * 
  * @param File $file
  * @return \Engine\IO\File\Parser\Contract
  * @throws InvalidContentException
  */
 public static function getParser(File $file)
 {
     foreach (self::$providers as $provider => $allowedExtensions) {
         if (in_array($file->getExt(), $allowedExtensions)) {
             return Engine::newInstance($provider);
         }
     }
     return Engine::newInstance(Factory::class);
 }
Ejemplo n.º 2
0
 public function makeRegisters()
 {
     // TODO: Implement makeRegisters() method.
     if (count($this->registers)) {
         $di = di();
         foreach ($this->registers as $i => $name) {
             if (is_string($name)) {
                 $register = Engine::newInstance($name);
                 if ($register instanceof ServiceRegister) {
                     $register->setDI($di);
                     $this->registers[$i] = $register;
                 } else {
                     throw new InvalidInstanceException("{$name} must implement " . ServiceRegister::class);
                 }
             }
         }
     }
     return $this;
 }