/** * Generate and save the cached file for a build target. * * @param MiniAsset\Factory $factory The factory class. * @param MiniAsset\AssetTarget $build The build target. * @return void */ protected function _buildTarget($factory, $build) { $writer = $factory->writer(); $compiler = $factory->compiler(); $name = $writer->buildFileName($build); if ($writer->isFresh($build) && !$this->cli->arguments->defined('force')) { $this->verbose('<light_blue>Skip building</light_blue> ' . $name . ' existing file is still fresh.', 'S'); return; } $writer->invalidate($build); $name = $writer->buildFileName($build); try { $this->verbose('<green>Saving file</green> for ' . $name, '.'); $contents = $compiler->generate($build); $writer->write($build, $contents); } catch (Exception $e) { $this->cli->err('Error: ' . $e->getMessage()); } }
protected function instance() { $factory = new Factory($this->config); return $factory->compiler(); }