/** * creates the interface */ private function createInterfaceTemplate() { $content = $this->read($this->config->getInterfaceTemplate()); $content = $this->config->replace($content); $filename = $this->config->getInterfaceFile(); $this->write($filename, $content); return true; }
/** * registers autoloader for new cached files * * @param TemplateObject $template * @param string $cachedclassname */ private function autoload(TemplateObject $template, $cachedclassname) { $interfacename = ltrim($this->namspace . '\\I' . $cachedclassname, '\\'); $classname = ltrim($this->namspace . '\\' . $cachedclassname, '\\'); spl_autoload_register(function ($class) use($template, $interfacename, $classname) { $filename = null; if ($class == $interfacename) { $filename = $template->getInterfaceFile(); } else { if ($class == $classname) { $filename = $template->getClassFile(); } } if (!empty($filename) && is_readable($filename)) { require_once $filename; } }); }