class FilterManager

Manages the available filters.

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

Hierarchy

Expanded class hierarchy of FilterManager

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

File

drupal/core/vendor/kriswallsmith/assetic/src/Assetic/FilterManager.php, line 21

Namespace

Assetic
View source
class FilterManager {
  private $filters = array();
  public function set($alias, FilterInterface $filter) {
    $this
      ->checkName($alias);
    $this->filters[$alias] = $filter;
  }
  public function get($alias) {
    if (!isset($this->filters[$alias])) {
      throw new \InvalidArgumentException(sprintf('There is no "%s" filter.', $alias));
    }
    return $this->filters[$alias];
  }
  public function has($alias) {
    return isset($this->filters[$alias]);
  }
  public function getNames() {
    return array_keys($this->filters);
  }

  /**
   * Checks that a name is valid.
   *
   * @param string $name An asset name candidate
   *
   * @throws \InvalidArgumentException If the asset name is invalid
   */
  protected function checkName($name) {
    if (!ctype_alnum(str_replace('_', '', $name))) {
      throw new \InvalidArgumentException(sprintf('The name "%s" is invalid.', $name));
    }
  }

}

Members

Namesort descending Modifiers Type Description Overrides
FilterManager::$filters private property
FilterManager::checkName protected function Checks that a name is valid.
FilterManager::get public function
FilterManager::getNames public function
FilterManager::has public function
FilterManager::set public function