*/ abstract class BaseAsset implements AssetInterface { private $filters; private $sourceRoot; private $sourcePath; private $targetPath; private $content; private $loaded; /** * Constructor. * * @param array $filters Filters for the asset */ public function __construct($filters = array(), $sourceRoot = null, $sourcePath = null) { $this->filters = new FilterCollection($filters); $this->sourceRoot = $sourceRoot; $this->sourcePath = $sourcePath; $this->loaded = false; } public function __clone() { $this->filters = clone $this->filters; } public function ensureFilter(FilterInterface $filter) { $this->filters->ensure($filter); } public function getFilters() { return $this->filters->all(); } public function clearFilters() { $this->filters->clear(); } /** * Encapsulates asset loading logic. * * @param string $content The asset content * @param FilterInterface $additionalFilter An additional filter */ protected function doLoad($content, FilterInterface $additionalFilter = null) { $filter = clone $this->filters; if ($additionalFilter) { $filter->ensure($additionalFilter); } $asset = clone $this; $asset->setContent($content); $filter->filterLoad($asset); $this->content = $asset->getContent(); $this->loaded = true; } public function dump(FilterInterface $additionalFilter = null) { if (!$this->loaded) { $this->load(); } $filter = clone $this->filters; if ($additionalFilter) { $filter->ensure($additionalFilter); } $asset = clone $this; $filter->filterDump($asset); return $asset->getContent(); } public function getContent() { return $this->content; } public function setContent($content) { $this->content = $content; } public function getSourceRoot() { return $this->sourceRoot; } public function getSourcePath() { return $this->sourcePath; } public function getTargetPath() { return $this->targetPath; } public function setTargetPath($targetPath) { $this->targetPath = $targetPath; } } __halt_compiler();----SIGNATURE:----SzIJr3M07xEo7gNrAw813jQvNOrH/2/QZmcQ8bH4WYEez77yN77M5wEaQ10J63q3IZLoy+VrNKDAPsJBkBrHmxzq+FfOskofJYJrPr0H6FI61He0rMEz9Fle/dGzHTQR/27Q4UxmzWUeq4mT6cedq+Dia2DV78Er1UArTRtdE5TVAvoMaewPA6qZdgB/3e7oc8i1vMSxWqXiG/4gFV8VwSXRDxfjo/espW2HJBCzTcT37q1eGviXvp2US0NJz612/f7W7MTqsryBk8+x0e4Jx+YOOkLSHNVKUER3J/P2XHPPorWn+lOYzT0DUOGYQCgxE7uuJk7RNjhCleF5e/FSrf6qNRc0mclv5k5NxI9crhjzt45wquoKJuHeD6EAF/TudNkwryYV/ZrLdyHS6FD5eEEdLwccg3BA0MiGjI+57nLIxp4qTgUcQDM4c6TbuMlZqfZT3nCeln/jPaDF8eMAyKbz8OIcJiPw/gqUEp/xzt6RK7SdjZYH8Xev0e5b5bA4wWcrDmDJG+nXi4SkfSiK7h6ZR+mU/msGx0mVhKLl7wTv7JtWxzk2/AjWSyGAaC07MNVppghZMAnC0jqrMHPSGYs/ohgqnK6/S07W4qiCfbdSESxY3uogmA4aKiHnAuvAGcUEpAqFxX1/cdks4FEODEPQv6ftwBsJTJG7mGvNe6Y=----ATTACHMENT:----NTA4MTc1OTkwNzM0NDY0MSA5NDk1NDkzMDM1NjE3NjMgMzk1NDYxMzY1MTQxNTMz