%PDF- %PDF-
Direktori : /home/lightco1/www/html/upgrade/libraries/vendor/joomla/uri/src/ |
Current File : /home/lightco1/www/html/upgrade/libraries/vendor/joomla/uri/src/UriImmutable.php |
<?php /** * Part of the Joomla Framework Uri Package * * @copyright Copyright (C) 2005 - 2016 Open Source Matters. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE */ namespace Joomla\Uri; /** * Uri Class * * This is an immutable version of the uri class. * * @since 1.0 */ final class UriImmutable extends AbstractUri { /** * @var boolean Has this class been instantiated yet. * @since 1.0 */ private $constructed = false; /** * Prevent setting undeclared properties. * * @param string $name This is an immutable object, setting $name is not allowed. * @param mixed $value This is an immutable object, setting $value is not allowed. * * @return null This method always throws an exception. * * @since 1.0 * @throws \BadMethodCallException */ public function __set($name, $value) { throw new \BadMethodCallException('This is an immutable object'); } /** * This is a special constructor that prevents calling the __construct method again. * * @param string $uri The optional URI string * * @since 1.0 * @throws \BadMethodCallException */ public function __construct($uri = null) { if ($this->constructed === true) { throw new \BadMethodCallException('This is an immutable object'); } $this->constructed = true; parent::__construct($uri); } }