vendor/pimcore/pimcore/lib/Templating/Model/ViewModel.php line 22

Open in your IDE?
  1. <?php
  2. /**
  3.  * Pimcore
  4.  *
  5.  * This source file is available under two different licenses:
  6.  * - GNU General Public License version 3 (GPLv3)
  7.  * - Pimcore Enterprise License (PEL)
  8.  * Full copyright and license information is available in
  9.  * LICENSE.md which is distributed with this source code.
  10.  *
  11.  * @copyright  Copyright (c) Pimcore GmbH (http://www.pimcore.org)
  12.  * @license    http://www.pimcore.org/license     GPLv3 and PEL
  13.  */
  14. namespace Pimcore\Templating\Model;
  15. use Symfony\Component\HttpFoundation\ParameterBag;
  16. /**
  17.  * @deprecated
  18.  */
  19. class ViewModel implements ViewModelInterface
  20. {
  21.     /**
  22.      * @var ParameterBag
  23.      */
  24.     protected $parameters;
  25.     /**
  26.      * @param array $parameters
  27.      */
  28.     public function __construct(array $parameters = [])
  29.     {
  30.         $this->initialize($parameters);
  31.     }
  32.     /**
  33.      * @param array $parameters
  34.      *
  35.      * @return $this
  36.      */
  37.     public function initialize(array $parameters = [])
  38.     {
  39.         $this->parameters = new ParameterBag($parameters);
  40.         return $this;
  41.     }
  42.     /**
  43.      * @return ParameterBag
  44.      */
  45.     public function getParameters()
  46.     {
  47.         return $this->parameters;
  48.     }
  49.     /**
  50.      * @return array
  51.      */
  52.     public function getAllParameters()
  53.     {
  54.         return $this->parameters->all();
  55.     }
  56.     /**
  57.      * @inheritDoc
  58.      */
  59.     public function get($key$default null)
  60.     {
  61.         return $this->getParameters()->get($key$default);
  62.     }
  63.     /**
  64.      * @inheritDoc
  65.      */
  66.     public function has($key)
  67.     {
  68.         return $this->parameters->has($key);
  69.     }
  70.     /**
  71.      * @param string $name
  72.      *
  73.      * @return mixed
  74.      */
  75.     public function __get($name)
  76.     {
  77.         return $this->parameters->get($namenull);
  78.     }
  79.     /**
  80.      * @param string $name
  81.      * @param mixed $value
  82.      */
  83.     public function __set($name$value)
  84.     {
  85.         $this->parameters->set($name$value);
  86.     }
  87.     /**
  88.      * @param string $name
  89.      *
  90.      * @return bool
  91.      */
  92.     public function __isset($name)
  93.     {
  94.         return $this->parameters->has($name);
  95.     }
  96.     /**
  97.      * @return \ArrayIterator
  98.      */
  99.     public function getIterator()
  100.     {
  101.         return $this->parameters->getIterator();
  102.     }
  103.     /**
  104.      * @return int
  105.      */
  106.     public function count()
  107.     {
  108.         return $this->parameters->count();
  109.     }
  110.     /**
  111.      * @param mixed $offset
  112.      *
  113.      * @return bool
  114.      */
  115.     public function offsetExists($offset)
  116.     {
  117.         return $this->parameters->has($offset);
  118.     }
  119.     /**
  120.      * @param mixed $offset
  121.      *
  122.      * @return mixed
  123.      */
  124.     public function offsetGet($offset)
  125.     {
  126.         return $this->parameters->get($offset);
  127.     }
  128.     /**
  129.      * @param mixed $offset
  130.      * @param mixed $value
  131.      */
  132.     public function offsetSet($offset$value)
  133.     {
  134.         $this->parameters->set($offset$value);
  135.     }
  136.     /**
  137.      * @param mixed $offset
  138.      */
  139.     public function offsetUnset($offset)
  140.     {
  141.         $this->parameters->remove($offset);
  142.     }
  143.     /**
  144.      * @inheritDoc
  145.      */
  146.     public function jsonSerialize()
  147.     {
  148.         return $this->parameters->all();
  149.     }
  150. }