A reference to an asset in the asset manager.
@author Kris Wallsmith <kris.wallsmith@gmail.com>
Expanded class hierarchy of AssetReference
class AssetReference implements AssetInterface {
private $am;
private $name;
private $filters = array();
public function __construct(AssetManager $am, $name) {
$this->am = $am;
$this->name = $name;
}
public function ensureFilter(FilterInterface $filter) {
$this->filters[] = $filter;
}
public function getFilters() {
$this
->flushFilters();
return $this
->callAsset(__FUNCTION__);
}
public function clearFilters() {
$this->filters = array();
$this
->callAsset(__FUNCTION__);
}
public function load(FilterInterface $additionalFilter = null) {
$this
->flushFilters();
return $this
->callAsset(__FUNCTION__, array(
$additionalFilter,
));
}
public function dump(FilterInterface $additionalFilter = null) {
$this
->flushFilters();
return $this
->callAsset(__FUNCTION__, array(
$additionalFilter,
));
}
public function getContent() {
return $this
->callAsset(__FUNCTION__);
}
public function setContent($content) {
$this
->callAsset(__FUNCTION__, array(
$content,
));
}
public function getSourceRoot() {
return $this
->callAsset(__FUNCTION__);
}
public function getSourcePath() {
return $this
->callAsset(__FUNCTION__);
}
public function getTargetPath() {
return $this
->callAsset(__FUNCTION__);
}
public function setTargetPath($targetPath) {
$this
->callAsset(__FUNCTION__, array(
$targetPath,
));
}
public function getLastModified() {
return $this
->callAsset(__FUNCTION__);
}
public function getVars() {
return $this
->callAsset(__FUNCTION__);
}
public function getValues() {
return $this
->callAsset(__FUNCTION__);
}
public function setValues(array $values) {
$this
->callAsset(__FUNCTION__, array(
$values,
));
}
// private
private function callAsset($method, $arguments = array()) {
$asset = $this->am
->get($this->name);
return call_user_func_array(array(
$asset,
$method,
), $arguments);
}
private function flushFilters() {
$asset = $this->am
->get($this->name);
while ($filter = array_shift($this->filters)) {
$asset
->ensureFilter($filter);
}
}
}
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
AssetReference:: |
private | property | ||
AssetReference:: |
private | property | ||
AssetReference:: |
private | property | ||
AssetReference:: |
private | function | ||
AssetReference:: |
public | function |
Clears all filters from the current asset. Overrides AssetInterface:: |
|
AssetReference:: |
public | function |
Applies dump filters and returns the asset as a string. Overrides AssetInterface:: |
|
AssetReference:: |
public | function |
Ensures the current asset includes the supplied filter. Overrides AssetInterface:: |
|
AssetReference:: |
private | function | ||
AssetReference:: |
public | function |
Returns the loaded content of the current asset. Overrides AssetInterface:: |
|
AssetReference:: |
public | function |
Returns an array of filters currently applied. Overrides AssetInterface:: |
|
AssetReference:: |
public | function |
Returns the time the current asset was last modified. Overrides AssetInterface:: |
|
AssetReference:: |
public | function |
Returns the relative path for the source asset. Overrides AssetInterface:: |
|
AssetReference:: |
public | function |
Returns an absolute path or URL to the source asset's root directory. Overrides AssetInterface:: |
|
AssetReference:: |
public | function |
Returns the URL for the current asset. Overrides AssetInterface:: |
|
AssetReference:: |
public | function |
Returns the current values for this asset. Overrides AssetInterface:: |
|
AssetReference:: |
public | function |
Returns an array of variable names for this asset. Overrides AssetInterface:: |
|
AssetReference:: |
public | function |
Loads the asset into memory and applies load filters. Overrides AssetInterface:: |
|
AssetReference:: |
public | function |
Sets the content of the current asset. Overrides AssetInterface:: |
|
AssetReference:: |
public | function |
Sets the URL for the current asset. Overrides AssetInterface:: |
|
AssetReference:: |
public | function |
Sets the values for the asset's variables. Overrides AssetInterface:: |
|
AssetReference:: |
public | function |