* {@inheritdoc}
*/
class PathPackage extends Package {
- //The base path
- protected $basePath;
-
- //The base url
- protected $baseUrl;
+ /**
+ * The base url
+ */
+ protected string $baseUrl;
/**
* {@inheritdoc}
*/
- public function __construct(string $basePath, VersionStrategyInterface $versionStrategy, ContextInterface $context = null) {
+ public function __construct(protected string $basePath, protected VersionStrategyInterface $versionStrategy, protected ?ContextInterface $context = null) {
//Without context use a null context
- $context = $context ?? new NullContext();
+ $this->context = $this->context ?? new NullContext();
//Call parent constructor
- parent::__construct($versionStrategy, $context);
+ parent::__construct($this->versionStrategy, $this->context);
//Without base path
if (empty($basePath)) {
}
//Set base url
- $this->baseUrl = $context->getBaseUrl();
+ $this->baseUrl = $this->context->getBaseUrl();
}
/**
*
* {@inheritdoc}
*/
- public function getUrl($path): string {
+ public function getUrl(string $path): string {
//Match url starting with a bundle name
if (preg_match('%^@([A-Z][a-zA-Z]*?)(?:Bundle/Resources/public)?/(.*)$%', $path, $matches)) {
//Handle empty or without replacement pattern basePath