[ Index ]

PHP Cross Reference of phpBB-3.1.12-deutsch

title

Body

[close]

/vendor/symfony/console/Symfony/Component/Console/Helper/ -> HelperSet.php (source)

   1  <?php
   2  
   3  /*
   4   * This file is part of the Symfony package.
   5   *
   6   * (c) Fabien Potencier <fabien@symfony.com>
   7   *
   8   * For the full copyright and license information, please view the LICENSE
   9   * file that was distributed with this source code.
  10   */
  11  
  12  namespace Symfony\Component\Console\Helper;
  13  
  14  use Symfony\Component\Console\Command\Command;
  15  
  16  /**
  17   * HelperSet represents a set of helpers to be used with a command.
  18   *
  19   * @author Fabien Potencier <fabien@symfony.com>
  20   */
  21  class HelperSet
  22  {
  23      private $helpers;
  24      private $command;
  25  
  26      /**
  27       * Constructor.
  28       *
  29       * @param Helper[] $helpers An array of helper.
  30       */
  31      public function __construct(array $helpers = array())
  32      {
  33          $this->helpers = array();
  34          foreach ($helpers as $alias => $helper) {
  35              $this->set($helper, is_int($alias) ? null : $alias);
  36          }
  37      }
  38  
  39      /**
  40       * Sets a helper.
  41       *
  42       * @param HelperInterface $helper The helper instance
  43       * @param string          $alias  An alias
  44       */
  45      public function set(HelperInterface $helper, $alias = null)
  46      {
  47          $this->helpers[$helper->getName()] = $helper;
  48          if (null !== $alias) {
  49              $this->helpers[$alias] = $helper;
  50          }
  51  
  52          $helper->setHelperSet($this);
  53      }
  54  
  55      /**
  56       * Returns true if the helper if defined.
  57       *
  58       * @param string $name The helper name
  59       *
  60       * @return bool true if the helper is defined, false otherwise
  61       */
  62      public function has($name)
  63      {
  64          return isset($this->helpers[$name]);
  65      }
  66  
  67      /**
  68       * Gets a helper value.
  69       *
  70       * @param string $name The helper name
  71       *
  72       * @return HelperInterface The helper instance
  73       *
  74       * @throws \InvalidArgumentException if the helper is not defined
  75       */
  76      public function get($name)
  77      {
  78          if (!$this->has($name)) {
  79              throw new \InvalidArgumentException(sprintf('The helper "%s" is not defined.', $name));
  80          }
  81  
  82          return $this->helpers[$name];
  83      }
  84  
  85      /**
  86       * Sets the command associated with this helper set.
  87       *
  88       * @param Command $command A Command instance
  89       */
  90      public function setCommand(Command $command = null)
  91      {
  92          $this->command = $command;
  93      }
  94  
  95      /**
  96       * Gets the command associated with this helper set.
  97       *
  98       * @return Command A Command instance
  99       */
 100      public function getCommand()
 101      {
 102          return $this->command;
 103      }
 104  }


Generated: Thu Jan 11 00:25:41 2018 Cross-referenced by PHPXref 0.7.1