class AssetReference

A reference to an asset in the asset manager.

@author Kris Wallsmith <kris.wallsmith@gmail.com>

Hierarchy

Expanded class hierarchy of AssetReference

1 file declares its use of AssetReference
AssetFactory.php in drupal/core/vendor/kriswallsmith/assetic/src/Assetic/Factory/AssetFactory.php

File

drupal/core/vendor/kriswallsmith/assetic/src/Assetic/Asset/AssetReference.php, line 22

Namespace

Assetic\Asset
View source
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);
    }
  }

}

Members

Namesort descending Modifiers Type Description Overrides
AssetReference::$am private property
AssetReference::$filters private property
AssetReference::$name private property
AssetReference::callAsset private function
AssetReference::clearFilters public function Clears all filters from the current asset. Overrides AssetInterface::clearFilters
AssetReference::dump public function Applies dump filters and returns the asset as a string. Overrides AssetInterface::dump
AssetReference::ensureFilter public function Ensures the current asset includes the supplied filter. Overrides AssetInterface::ensureFilter
AssetReference::flushFilters private function
AssetReference::getContent public function Returns the loaded content of the current asset. Overrides AssetInterface::getContent
AssetReference::getFilters public function Returns an array of filters currently applied. Overrides AssetInterface::getFilters
AssetReference::getLastModified public function Returns the time the current asset was last modified. Overrides AssetInterface::getLastModified
AssetReference::getSourcePath public function Returns the relative path for the source asset. Overrides AssetInterface::getSourcePath
AssetReference::getSourceRoot public function Returns an absolute path or URL to the source asset's root directory. Overrides AssetInterface::getSourceRoot
AssetReference::getTargetPath public function Returns the URL for the current asset. Overrides AssetInterface::getTargetPath
AssetReference::getValues public function Returns the current values for this asset. Overrides AssetInterface::getValues
AssetReference::getVars public function Returns an array of variable names for this asset. Overrides AssetInterface::getVars
AssetReference::load public function Loads the asset into memory and applies load filters. Overrides AssetInterface::load
AssetReference::setContent public function Sets the content of the current asset. Overrides AssetInterface::setContent
AssetReference::setTargetPath public function Sets the URL for the current asset. Overrides AssetInterface::setTargetPath
AssetReference::setValues public function Sets the values for the asset's variables. Overrides AssetInterface::setValues
AssetReference::__construct public function