annotate vendor/typo3/phar-stream-wrapper/src/Resolver/PharInvocation.php @ 5:12f9dff5fda9 tip

Update to Drupal core 8.7.1
author Chris Cannam
date Thu, 09 May 2019 15:34:47 +0100
parents
children
rev   line source
Chris@5 1 <?php
Chris@5 2 namespace TYPO3\PharStreamWrapper\Resolver;
Chris@5 3
Chris@5 4 /*
Chris@5 5 * This file is part of the TYPO3 project.
Chris@5 6 *
Chris@5 7 * It is free software; you can redistribute it and/or modify it under the terms
Chris@5 8 * of the MIT License (MIT). For the full copyright and license information,
Chris@5 9 * please read the LICENSE file that was distributed with this source code.
Chris@5 10 *
Chris@5 11 * The TYPO3 project - inspiring people to share!
Chris@5 12 */
Chris@5 13
Chris@5 14 use TYPO3\PharStreamWrapper\Exception;
Chris@5 15
Chris@5 16 class PharInvocation
Chris@5 17 {
Chris@5 18 /**
Chris@5 19 * @var string
Chris@5 20 */
Chris@5 21 private $baseName;
Chris@5 22
Chris@5 23 /**
Chris@5 24 * @var string
Chris@5 25 */
Chris@5 26 private $alias;
Chris@5 27
Chris@5 28 /**
Chris@5 29 * @var bool
Chris@5 30 * @see \TYPO3\PharStreamWrapper\PharStreamWrapper::collectInvocation()
Chris@5 31 */
Chris@5 32 private $confirmed = false;
Chris@5 33
Chris@5 34 /**
Chris@5 35 * Arbitrary variables to be used by interceptors as registry
Chris@5 36 * (e.g. in order to avoid duplicate processing and assertions)
Chris@5 37 *
Chris@5 38 * @var array
Chris@5 39 */
Chris@5 40 private $variables;
Chris@5 41
Chris@5 42 /**
Chris@5 43 * @param string $baseName
Chris@5 44 * @param string $alias
Chris@5 45 */
Chris@5 46 public function __construct($baseName, $alias = '')
Chris@5 47 {
Chris@5 48 if ($baseName === '') {
Chris@5 49 throw new Exception(
Chris@5 50 'Base-name cannot be empty',
Chris@5 51 1551283689
Chris@5 52 );
Chris@5 53 }
Chris@5 54 $this->baseName = $baseName;
Chris@5 55 $this->alias = $alias;
Chris@5 56 }
Chris@5 57
Chris@5 58 /**
Chris@5 59 * @return string
Chris@5 60 */
Chris@5 61 public function __toString()
Chris@5 62 {
Chris@5 63 return $this->baseName;
Chris@5 64 }
Chris@5 65
Chris@5 66 /**
Chris@5 67 * @return string
Chris@5 68 */
Chris@5 69 public function getBaseName()
Chris@5 70 {
Chris@5 71 return $this->baseName;
Chris@5 72 }
Chris@5 73
Chris@5 74 /**
Chris@5 75 * @return null|string
Chris@5 76 */
Chris@5 77 public function getAlias()
Chris@5 78 {
Chris@5 79 return $this->alias;
Chris@5 80 }
Chris@5 81
Chris@5 82 /**
Chris@5 83 * @return bool
Chris@5 84 */
Chris@5 85 public function isConfirmed()
Chris@5 86 {
Chris@5 87 return $this->confirmed;
Chris@5 88 }
Chris@5 89
Chris@5 90 public function confirm()
Chris@5 91 {
Chris@5 92 $this->confirmed = true;
Chris@5 93 }
Chris@5 94
Chris@5 95 /**
Chris@5 96 * @param string $name
Chris@5 97 * @return mixed|null
Chris@5 98 */
Chris@5 99 public function getVariable($name)
Chris@5 100 {
Chris@5 101 if (!isset($this->variables[$name])) {
Chris@5 102 return null;
Chris@5 103 }
Chris@5 104 return $this->variables[$name];
Chris@5 105 }
Chris@5 106
Chris@5 107 /**
Chris@5 108 * @param string $name
Chris@5 109 * @param mixed $value
Chris@5 110 */
Chris@5 111 public function setVariable($name, $value)
Chris@5 112 {
Chris@5 113 $this->variables[$name] = $value;
Chris@5 114 }
Chris@5 115
Chris@5 116 /**
Chris@5 117 * @param PharInvocation $other
Chris@5 118 * @return bool
Chris@5 119 */
Chris@5 120 public function equals(PharInvocation $other)
Chris@5 121 {
Chris@5 122 return $other->baseName === $this->baseName
Chris@5 123 && $other->alias === $this->alias;
Chris@5 124 }
Chris@5 125 }